platform/upstream/dotnet/runtime.git
3 years agoMore JSON xml updates (#57022)
Dan Moseley [Mon, 9 Aug 2021 18:58:01 +0000 (12:58 -0600)]
More JSON xml updates (#57022)

3 years agoDo not run crossgen2 under GC stress in tests (#56949)
Anton Lapounov [Mon, 9 Aug 2021 17:50:21 +0000 (10:50 -0700)]
Do not run crossgen2 under GC stress in tests (#56949)

3 years ago[libraries][Android] Remove ActiveIssue from BinaryFormetter dependent System.Collect...
Mitchell Hwang [Mon, 9 Aug 2021 17:40:45 +0000 (13:40 -0400)]
[libraries][Android] Remove ActiveIssue from BinaryFormetter dependent System.Collections test (#56985)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years ago[libraries][Android] Reenable System.Collections.Immutable Tests (#56988)
Mitchell Hwang [Mon, 9 Aug 2021 17:33:47 +0000 (13:33 -0400)]
[libraries][Android] Reenable System.Collections.Immutable Tests (#56988)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoFix missing offset in contained BITCAST for STORE_LCL_FLD (#57059)
Jakob Botsch Nielsen [Mon, 9 Aug 2021 17:20:39 +0000 (19:20 +0200)]
Fix missing offset in contained BITCAST for STORE_LCL_FLD (#57059)

3 years agoStrong name key id cleanup and pkg testing move (#57044)
Viktor Hofer [Mon, 9 Aug 2021 17:20:11 +0000 (19:20 +0200)]
Strong name key id cleanup and pkg testing move (#57044)

* Move src/libraries/pkg/test to src/libraries/testPackages

* Remove default StrongNameKeyId Open properties

3 years agoEnsure Directory.Delete works fine even if user has no ListDirectory permissions...
Adam Sitnik [Mon, 9 Aug 2021 16:56:58 +0000 (18:56 +0200)]
Ensure Directory.Delete works fine even if user has no ListDirectory permissions (#56996)

3 years agoOne more place to take care for better error handling (#56997)
Fan Yang [Mon, 9 Aug 2021 16:47:11 +0000 (12:47 -0400)]
One more place to take care for better error handling (#56997)

* One more place to take care for better error handling

* Handle null

* Rename function

3 years agoRemove salt length check from Rfc2898DeriveBytes
Kevin Jones [Mon, 9 Aug 2021 16:25:12 +0000 (12:25 -0400)]
Remove salt length check from Rfc2898DeriveBytes

Some standards/protocols want salts smaller than we permit, so we're really just getting in people's way.

3 years agoRemove unused System.Reflection.Emit leftovers (#56698)
Bar Arnon [Mon, 9 Aug 2021 15:21:38 +0000 (18:21 +0300)]
Remove unused System.Reflection.Emit leftovers (#56698)

* Remove unused System.Reflection.Emit leftovers

Follow up to #56153

* Remove nCreateISymWriterForDynamicModule

* Removes LineNumberInfo, MarkSequencePoint & GetMethodSigHelper

* Remove MarkSequencePoint from mono

* Fix GetMethodSigHelper overloads

* Match changes in mono

* Remove SequencePointList from mono

3 years agoRemove executable bit from unrelated files (#57051)
Adeel Mujahid [Mon, 9 Aug 2021 15:05:35 +0000 (18:05 +0300)]
Remove executable bit from unrelated files (#57051)

3 years ago[wasm] Skip tests for ExpectContinue HTTP header (#57058)
Pavel Savara [Mon, 9 Aug 2021 13:10:11 +0000 (15:10 +0200)]
[wasm] Skip tests for ExpectContinue HTTP header (#57058)

Skip tests for ExpectContinue HTTP header for WASM

3 years agoFix reference preservation for boxed structs (#56412)
Eirik Tsarpalis [Mon, 9 Aug 2021 12:48:36 +0000 (15:48 +0300)]
Fix reference preservation for boxed structs (#56412)

* Fix reference preservation for boxed structs.

* add null assertion for BoxedStructReferenceId when writing a new instance

3 years agoFix AccessViolation/InvalidProgramException in custom nullable converters. (#56577)
Eirik Tsarpalis [Mon, 9 Aug 2021 12:48:00 +0000 (15:48 +0300)]
Fix AccessViolation/InvalidProgramException in custom nullable converters. (#56577)

* Fix AccessViolation/InvalidProgramException in custom nullable converters.

* address feedback

* add comments to new test converters.

3 years agoOverride memory-based ReadAsync & WriteAsync for SerialStream.Unix (#56866)
Bar Arnon [Mon, 9 Aug 2021 09:13:55 +0000 (12:13 +0300)]
Override memory-based ReadAsync & WriteAsync for SerialStream.Unix (#56866)

3 years agoMove corehost.proj to corehost directory (#57036)
Adeel Mujahid [Mon, 9 Aug 2021 07:33:28 +0000 (10:33 +0300)]
Move corehost.proj to corehost directory (#57036)

* Move corehost.proj to corehost directory

* Simplify host version overriding

3 years agoFix invalid CodeDom comment generation when a new line starts with a slash (#56640)
Joseph Musser [Mon, 9 Aug 2021 03:19:06 +0000 (23:19 -0400)]
Fix invalid CodeDom comment generation when a new line starts with a slash (#56640)

* Failing tests where CodeDom creates invalid comment types

* Prevent CodeDom from creating invalid comment types

* Make C# generator impl more consistent with VB generator

* Switch attribute from ActiveIssue to SkipOnTargetFramework

* Be even more conservative about when the space is needed

* Attempt to improve readability

* Update VBCodeGenerationTests.cs

Co-authored-by: Dan Moseley <danmose@microsoft.com>
3 years agoJIT: fix morph tail call copy opt alias analysis (#57009)
Andy Ayers [Sun, 8 Aug 2021 21:48:39 +0000 (14:48 -0700)]
JIT: fix morph tail call copy opt alias analysis (#57009)

If there are non-call references to an implicit byref local, disqualify
that local from morph tail call copy optimization.

The fix is conservative in that "harmless" non-call references like field
accesses will also disqualify the opt. This can be improved on with extra
analysis in local morph.

Closes #56734.

3 years agoRemove HasWildCardCharacters method (#57028)
Ilya [Sun, 8 Aug 2021 20:32:20 +0000 (01:32 +0500)]
Remove HasWildCardCharacters method (#57028)

It is not used any more.

3 years agoJIT: arm64 redundant move peephole must check instruction format (#57016)
Andy Ayers [Sun, 8 Aug 2021 15:08:25 +0000 (08:08 -0700)]
JIT: arm64 redundant move peephole must check instruction format (#57016)

Otherwise we may mistake an immediate for a register and do an incorrect
optimization.

Fixes #56689.

3 years agoJIT: don't update early ref counts in morph (#57037)
Andy Ayers [Sun, 8 Aug 2021 15:07:56 +0000 (08:07 -0700)]
JIT: don't update early ref counts in morph (#57037)

These updates are a vestige of an earlier time when we could not distinguish
early ref counts from normal ref counts. Updating them makes reasoning using
them during morph tricky, and there's no longer any need to do this.

Prerequisite to fixing #56743.

3 years agoLink issue #10478 (#56728)
Kunal Pathak [Sun, 8 Aug 2021 07:48:21 +0000 (00:48 -0700)]
Link issue #10478 (#56728)

* Link issue #56726

* Update to 10478

3 years agoFix ARM64 floating point registers unwinding in PAL (#56919)
Jan Vorlicek [Sun, 8 Aug 2021 06:10:42 +0000 (08:10 +0200)]
Fix ARM64 floating point registers unwinding in PAL (#56919)

* Fix ARM64 floating point registers unwinding in PAL

We were not unwinding the non-volatile floating point registers at all
(not transferring them between the CONTEXT and ucontext_t before and
after the unw_step). That causes crashes on arm64 Unix in some of
the tests since JIT now generates code that uses e.g. the D8 register
and a runtime code that was throwing an exception was using it too.

* Fix non-OSX arm64, remove test csproj patch

* Fix Linux arm64

* Fix Linux arm64 - now really

Fixes #56522

3 years agoFix license in two code documents (#56755)
Adeel Mujahid [Sat, 7 Aug 2021 16:40:12 +0000 (19:40 +0300)]
Fix license in two code documents (#56755)

3 years agoAdditional Diagnostics in Dependency Injection (#56809)
Eric Erhardt [Sat, 7 Aug 2021 15:21:54 +0000 (10:21 -0500)]
Additional Diagnostics in Dependency Injection (#56809)

* Additional Diagnostics in Dependency Injection

Log events when a ServiceProvider is created:

* How many singleton, scoped, transient services?
* Log the list of registrations

Fix #56313

* Add ServiceProvider HashCode to all events.

* Write ServiceProvider information when DependencyInjectionEventSource becomes enabled.

This allows for listeners to attach to a process after it is running, and get the DI information.

* Update new events to use Informational level and to have a Keyword.

* Switch to use WeakReference when holding on to ServiceProviders in DependencyInjectionEventSource.

3 years ago[wasm] Redesign of managed objects marshaling and lifecycle (#56538)
Pavel Savara [Sat, 7 Aug 2021 06:06:48 +0000 (08:06 +0200)]
[wasm] Redesign of managed objects marshaling and lifecycle (#56538)

file cycle of JS owned C# instances is driven by FinalizationRegistry

- got rid of Runtime._weakDelegateTable and Runtime._rawToJS
- got rid of JSObject.WeakRawObject and JSObject.RawObject
- GCHandle instead of JSObject double proxy for plain managed ref types
- GCHandle instead of int sequence for delegates + redesign of invocation
- GCHandle for task + redesign of invocation
- improved in-flight retention of thenable/promise and Task
- explicitly delegate type of parameter for EventListener
- moved and renamed some binding functions
- renamed all handles to jsHandle or gcHandle as appropriate
- removed jsHandle math
- cleanup of unused functions
- improved error messages for invalid handles
- more unit tests

3 years agoFixes for text-based PGO (#56986)
Andy Ayers [Sat, 7 Aug 2021 00:52:39 +0000 (17:52 -0700)]
Fixes for text-based PGO (#56986)

Fix missing indirection when reading in text-based PGO data.

Prioritize reading text-based PGO over dynamic or static PGO data, so that we
can use text to provide a fixed set of PGO data when trying to isolate bugs.

In the jit, give text-based PGO data the same trust level we give to dynamic
PGO data.

3 years agoSgen: Added 'default-namespace' argument (#46500)
Tal Aloni [Fri, 6 Aug 2021 22:48:07 +0000 (01:48 +0300)]
Sgen: Added 'default-namespace' argument (#46500)

* Sgen: Added an optional 'default-namespace' argument

The .NET runtime support loading pre-generated assemblies according to both the type & defaultNamespace when creating an XmlSerializer instance,
Given that, it is extremely useful to have the ability to generate an assembly for different defaultNamespace.

* Added defaultNamespace argument to XmlReflectionImporter

* Prevent setting default-namespace twice

* Added missing using statement

3 years agoFixes #56930 (#57000)
Egor Chesakov [Fri, 6 Aug 2021 22:19:51 +0000 (15:19 -0700)]
Fixes #56930 (#57000)

* Don't eliminate store for the following sequence of instructions
```
ldr wzr, [addrReg, #immOff]
str wzr, [addrReg, #immOff]
```

* Add regression test for https://github.com/dotnet/runtime/issues/56930

3 years agoDisable test failing in .net framework (#56869)
Buyaa Namnan [Fri, 6 Aug 2021 22:17:56 +0000 (15:17 -0700)]
Disable test failing in .net framework (#56869)

* Disable test failing in .net framework

3 years agoChange IOptionsSnapshot to reuse options instances across scopes (#56271)
Nino Floris [Fri, 6 Aug 2021 21:51:45 +0000 (23:51 +0200)]
Change IOptionsSnapshot to reuse options instances across scopes (#56271)

* Change IOptionsSnapshot to reuse options instances across scopes

* Improve snapshot perf for unnamed option and delay dictionary alloc

Co-authored-by: Kahbazi <akahbazi@gmail.com>
Co-authored-by: Kahbazi <akahbazi@gmail.com>
3 years agoAllow Multiple EventSources with same name (GUID) (#56873)
John Salem [Fri, 6 Aug 2021 21:03:26 +0000 (14:03 -0700)]
Allow Multiple EventSources with same name (GUID) (#56873)

3 years agoFix contract violation in debugger func eval (#56933)
David Wrighton [Fri, 6 Aug 2021 20:23:26 +0000 (13:23 -0700)]
Fix contract violation in debugger func eval (#56933)

`DebuggerEval::DebuggerEval` is called from `Debugger::FuncEvalSetup` which is a NOTHROW function. As the `GetInteropSafeExecutableHeap` and associated `Alloc` functions can fail with an OOM, move the allocation out of the constructor to the caller where we can safely return `E_OUTOFMEMORY`.

This contract violation prevents debugging on chk and debug builds of the runtime.

Fixes #54504

3 years ago[wasm][debugger] Fixing async locals in nested ContinueWith blocks (#56911)
Thays Grazia [Fri, 6 Aug 2021 19:54:40 +0000 (16:54 -0300)]
[wasm][debugger] Fixing async locals in nested ContinueWith blocks (#56911)

* Adding test for #41984

* Adding old @radical tests and fixing it.

* Fixing tests.

* Update src/mono/wasm/debugger/BrowserDebugProxy/MonoSDBHelper.cs

Co-authored-by: Ankit Jain <radical@gmail.com>
* Update src/mono/wasm/debugger/tests/debugger-test/debugger-async-test.cs

Co-authored-by: Ankit Jain <radical@gmail.com>
* Addressing @radical comments.

* Addressing @radical comments.

* Addressing @radical comments.

Co-authored-by: Ankit Jain <radical@gmail.com>
3 years agoRemove System.Linq in Blazor WASM apps (#56937)
Eric Erhardt [Fri, 6 Aug 2021 19:24:45 +0000 (14:24 -0500)]
Remove System.Linq in Blazor WASM apps (#56937)

Removes the last usages of System.Linq in a default Blazor WASM app, which were a handful of ToArray calls.

Fix #56916

3 years agoThis fixes a perf bug in revisit_written_pages for regions - if we are called with...
Peter Sollich [Fri, 6 Aug 2021 19:08:15 +0000 (21:08 +0200)]
This fixes a perf bug in revisit_written_pages for regions - if we are called with concurrent_p == FALSE, we start iterating at gen 0. This causes the small_object_segments to be set to FALSE when we are done with gen 0. This is of course incorrect, we should set this flag when we are done with gen 2. Fix is to modify the if-condition to test for the end of gen 2. (#56987)

3 years agoMore Extensions doc update (#56991)
Dan Moseley [Fri, 6 Aug 2021 19:04:12 +0000 (13:04 -0600)]
More Extensions doc update (#56991)

3 years ago[Mono]: Make EventPipe MonoProfiler provider GC events async safe. (#56714)
Johan Lorensson [Fri, 6 Aug 2021 18:35:56 +0000 (20:35 +0200)]
[Mono]: Make EventPipe MonoProfiler provider GC events async safe. (#56714)

* Make EventPipe MonoProfiler provider GC events async safe.

EventPipe MonoProfiler provider includes most Mono profiler events,
but events currently triggered during GC is not emitted since EventPipe
is not async safe.

This commit add support to emit the MonoProfiler events triggered during
GC (gc resize, gc moves, gc roots and heap dump object references) into
a async safe temporary memory buffer that will be emitted into EventPipe
once GC completes (and world has been restarted). This opens up the
ability to do heapshots using EventPipe running on Mono into nettrace
files.

Heapshots can be triggered in same way as on CoreCLR, creating an
EventPipe session with GCHeapCollectKeyword keyword. Only one heapshot
can be triggered at a time, so in order to trigger an additional
heapshot, a new EventPipe session is setup (after the previous heapshot
has completed). Heapshot events will be included in all session with
configured keywords.

It is also possible to include all vtable/class references
(including class name), into heap dump. This is enabled by a specific
keyword and makes the dump self contained (no need to track type load etc).
That way runtime can start up without any profiler support, and then it
is possible to use custom tool or dotnet-trace to request a heap dump
(including all referenced vtable/class references) and once that
session is done, it is possible to do a new session and get a new
separate heap dump into a new session. Having separate sessions in
different files opens up the ability to diff between any heap dump over
time.

3 years agoReset loop numbers in RecomputeLoopInfo (#56981)
SingleAccretion [Fri, 6 Aug 2021 18:22:54 +0000 (21:22 +0300)]
Reset loop numbers in RecomputeLoopInfo (#56981)

They become stale after optimizations.

3 years agoFix race condition in Net.Security telemetry test (#56984)
Miha Zupan [Fri, 6 Aug 2021 17:33:32 +0000 (10:33 -0700)]
Fix race condition in Net.Security telemetry test (#56984)

3 years agoRefactor repeated invalid character checks in Path.GetFullPath Unix and Windows ...
Steve Berdy [Fri, 6 Aug 2021 16:58:25 +0000 (12:58 -0400)]
Refactor repeated invalid character checks in Path.GetFullPath Unix and Windows (#56568)

* Refactored repeated checks for invalid path chars

* Removed checkedForInvalids param and renamed method to GetFullPathInternal

* Apply suggestions from code review

* Cleaned up trailing whitespace

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agoAdd JSON src-gen support for deserializing with parameterized ctors (#56354)
Layomi Akinrinade [Fri, 6 Aug 2021 16:47:48 +0000 (09:47 -0700)]
Add JSON src-gen support for deserializing with parameterized ctors (#56354)

* Add JSON src-gen support for deserializing with parameterized ctors

* Address API review and PR feedback

* Fix issue with init-only properties

* Make misc fixes for build

3 years agoReenable MacCatalyst Arm64 crashing test suites (#56625)
Mitchell Hwang [Fri, 6 Aug 2021 13:29:10 +0000 (09:29 -0400)]
Reenable MacCatalyst Arm64 crashing test suites (#56625)

Evaluating the state of flakey test suite crashes #53813

1: no failures
2: no failures
3: no failures
4: no failures (but noticed that System.Diagnostics.DiagnosticSource.Switches.Tests had 0 tests due to ActiveIssue at class level)
5: no failures (Remove MacCatalyst Skip instead of Android skip for System.Diagnostics.DiagnosticSource.Switches.Tests)
6: no failures

From several test runs of MacCatalyst arm64 of the crashing test suites in #53813, none were found to be crashing anymore, so its suspected that a fix had made it in.

This PR looks to re-enable those test suites to be ran on MacCatalyst arm64 and to combine the Active Issues for Android and iOS/tvOS into one as they have the same failure.

Fixes #53813

System.Diagnostic.DiagnosticSource.Switches.Tests is re-enabled in #56737

3 years agoRun just Android Arm64 System.Security.Cryptography.Pkcs.Tests (#56861)
Mitchell Hwang [Fri, 6 Aug 2021 13:22:43 +0000 (09:22 -0400)]
Run just Android Arm64 System.Security.Cryptography.Pkcs.Tests (#56861)

* Run just Android Arm64 System.Security.Cryptography.Pkcs.Tests

* Revert "Run just Android Arm64 System.Security.Cryptography.Pkcs.Tests"

This reverts commit 2112f85c9abf4668b892ef21c0476df40a8f71be.

* [libraries][Android] Remove System.Security.Cryptography.Pkcs.Tests proj level skip

* Skip System.Security.Cryptography.Pkcs on CI for x64 x86 crash

* Reduce iteration count for Android due to high memory allocation

* Revert "Skip System.Security.Cryptography.Pkcs on CI for x64 x86 crash"

This reverts commit 294ea1519d3cdc62f441f55774d9f4cb9ba37d02.

* Add comment to explain change and use inline condition

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years ago[libraries][tvOS] Update Issue causing System.Net.Requests to fail (#56624)
Mitchell Hwang [Fri, 6 Aug 2021 13:19:42 +0000 (09:19 -0400)]
[libraries][tvOS] Update Issue causing System.Net.Requests to fail (#56624)

* [libraries][iOS][tvOS] Update Issue causing System.Net.Requests to fail

* [libraries][tvOS] Default preauthenticate in InnerSendAsync to false

* Defalt SendWithProxyAuthAsync doRequestAuth parameter to false

* [libraries] Add IsBinaryFormatterSupported ConditionalFact

* [libraries][tvOS] Add ActiveIssue for loopback request header reading failure

* Fix location of ActiveIssue

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years ago[libraries][Android] Skip OffsetOfTests on Android x86 (#56909)
Mitchell Hwang [Fri, 6 Aug 2021 13:17:59 +0000 (09:17 -0400)]
[libraries][Android] Skip OffsetOfTests on Android x86 (#56909)

* [libraries][Android] Skip OffsetOfTests on Android x86

* Fix typo and import

* Check for x86 and retain ActiveIssue

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoAdd runtimeconfig.json support for WebAssembly (#56486)
Fan Yang [Fri, 6 Aug 2021 13:04:16 +0000 (09:04 -0400)]
Add runtimeconfig.json support for WebAssembly (#56486)

* Initial change for adding runtimeconfig to wasm

* Add runtimeconfig support to wasm

* Move test folder and update runtimeconifg task name

* Fix test

* Fix test csproj file

* Use the right var for main dll name

* Resolve review feedback part 1

* Resolve review feedbacks part 2

* Add doc for updating dependencies when adding new tasks

* Remove redundant condition and redundant copy

* There is no runtimeconfig.json file to parse, when OutputType is library. So skip it.

* Skip for Android tests as well.

* Remove the wrong locatioin of WasmFilesToIncludeInFileSystem

* Update runtimeconfig file path

* Add RuntimeConfigParserTasksAssemblyPath to linker test project template

* Fix test failures on WASM EAT and AOT lanes

* [wasm] Add a test for reading runtimeconfig.json

* improve error reporting slightly

* Enable tests

* One more thing to enable tests

* Run target _WasmGenerateRuntimeConfig when runtimeconfig.json file exists

* Add a test for configure runtime using msbuild properties

* Fix runtime test failures

* Update tests base on feedback

* Add missing ")"

* Add one more condition

* More format changes

* Better error handling

* [wasm] Fix build for a test support project

This fixes the build for ApplyUpdateReferencedAssembly.csproj, which is
a support project for HotReload wasm functional test.

```
D:\workspace\_work\1\s\src\mono\wasm\build\WasmApp.targets(131,5): error : Could not find
    D:\workspace\_work\1\s\artifacts\bin\ApplyUpdateReferencedAssembly\net6.0-Release\browser-wasm\publish\ApplyUpdateReferencedAssembly.runtimeconfig.json
    for D:\workspace\_work\1\s\artifacts\bin\ApplyUpdateReferencedAssembly\net6.0-Release\browser-wasm\publish\ApplyUpdateReferencedAssembly.dll.

    [D:\workspace\_work\1\s\src\tests\FunctionalTests\WebAssembly\Browser\HotReload\ApplyUpdateReferencedAssembly\ApplyUpdateReferencedAssembly.csproj]
```

The wasm targets should be run at all for this project. But they are run
because they get imported by tests.wasm.targets, which gets imported because
`$(IsTestProject)=true`.

The csproj has `$(IsTestProject)=false`, and `$(IsTestSupportProject)=true`,
which should mean that the test.props/targets don't get imported. But the
import is conditioned on `$(EnableTestSupport)`, which gets set in
`src/libraries/Directory.Build.props`. And that means setting
`$(IsTestProject)=true` in the csproj is too late.

So, instead, set that in a `Directory.Build.props`. And also, ensure that the
`Directory.Build.props` for functional tests doesn't override the value!

Co-authored-by: Ankit Jain <radical@gmail.com>
3 years agoRedisign HTTP/2 KeepAlive PING tests (#56736)
Anton Firszov [Fri, 6 Aug 2021 12:41:04 +0000 (14:41 +0200)]
Redisign HTTP/2 KeepAlive PING tests (#56736)

Completely redesign tests for HTTP/2 KeepAlive PING, so they:
- Work well with RTT pings introduced in Implement dynamic HTTP/2 window scaling #54755
- Run sequentially, reducing the chance of failing because of timing issues caused by parallel workloads
- Are better organized: multiple test cases for different scenarios, instead of one theory with complex branches on parameters

Instead of reading / reacting to frames inline, there is a separate Task for processing incoming frames, responding to PING immediately and pushing other frames to a Channel<Frame>.

Fixes #41929

3 years agoFix HttpStress build (#56912)
Anton Firszov [Fri, 6 Aug 2021 12:37:23 +0000 (14:37 +0200)]
Fix HttpStress build (#56912)

#56775 broke HttpStress.

3 years agoDefine timeout for CreateSocket.Ctor_SafeHandle_Listening_Success (#56717)
Anton Firszov [Fri, 6 Aug 2021 12:36:27 +0000 (14:36 +0200)]
Define timeout for CreateSocket.Ctor_SafeHandle_Listening_Success (#56717)

3 years agoRemove Microsoft.DotNet.PackageValidation from global.json (#56972)
Alexander Köplinger [Fri, 6 Aug 2021 12:17:38 +0000 (14:17 +0200)]
Remove Microsoft.DotNet.PackageValidation from global.json (#56972)

I incorrectly added it back while resolving merge conflicts in https://github.com/dotnet/runtime/pull/56719 but it was removed from global.json with https://github.com/dotnet/runtime/pull/56712

3 years agoFix duplicate license files in msi packages (#56959)
Steve Pfister [Fri, 6 Aug 2021 12:12:42 +0000 (08:12 -0400)]
Fix duplicate license files in msi packages (#56959)

It appears when we added the workloads subset, the msi projects
contained a step to add a License.txt file to the packages it creates.
This resulted in a conflict as runtime will also add one.

To fix, we'll skip adding the extra License.txt file when the project is
'msi.csproj'.

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

3 years agoFix Issue#55518 (#56668)
Nikitin A. Kirill [Fri, 6 Aug 2021 11:31:03 +0000 (15:31 +0400)]
Fix Issue#55518 (#56668)

3 years agoImprove region free list handling (#56314)
Peter Sollich [Fri, 6 Aug 2021 11:14:25 +0000 (13:14 +0200)]
Improve region free list handling (#56314)

The main ideas are:
- Move free regions exceeding ephemeral / UOH budgets to a list of regions to be decommited.
 - In SVR GC, distribute the remaining free regions evenly across heaps.
 - Decommit extra free regions right away (in WKS) or gradually on a GC thread (in SVR).
 - Put free regions exceeding the standard size for UOH on a global list for "free huge regions".
 - When we have choice which regions to decommit, we pick the ones with the highest addresses to reduce address space fragmentation.

3 years agoFix accounting issue with sweep_region_in_plan. (#56910)
Peter Sollich [Fri, 6 Aug 2021 11:11:23 +0000 (13:11 +0200)]
Fix accounting issue with sweep_region_in_plan. (#56910)

The free list items that we find while doing sweep_region_in_plan are kept on a per-region free list temporarily and later transferred to the per-generation allocator.

We also need to keep track of the free list space and the free obj space to make the accounting work out - otherwise we have items on the per-generation allocator that are unaccounted for, and the per-generation free obj space may become negative. Both cause us to overestimate fragmentation and thus do unnecessary blocking GCs.

3 years agoClean-up pkgproj leftovers in libs and apply fixes (#56899)
Viktor Hofer [Fri, 6 Aug 2021 10:01:36 +0000 (12:01 +0200)]
Clean-up pkgproj leftovers in libs and apply fixes (#56899)

* Clean-up pkgproj leftovers in libs and apply fixes

Remove any pkgproj infrastructure that was only used by src/libraries
(which is the majority). Delete the packageindex *YAY*.
Update the documentation that covered the packageindex and the pkgprojs.

Avoid any incremental builds during packaging by removing
libraries-packages.proj and use src.proj for packaging instead. Make use
of the `GeneratePackageOnBuild` property to build package during the
allconfigurations without requiring a different entry target.

Fix the addition of the DocumentationFile during packaging when
`GeneratePackageOnBuid` is used by hooking onto the
`DocumentationProjectOutputGroup` that NuGet uses and replacing the
generated documentation file with the one that comes via the
intellisense package.
Also introduce a property to choose the generated documentation file
over the one from the intellisense package:
<UseIntellisenseDocumentationFile>false</UseIntellisenseDocumentationFile>

Removing a few leftover PackageDescription properties from the projects'
Directory.Build.props file.

Cleaning up properties in Directory.Build.props & Directory.Build.targets
files.

* Actually run packaging during the allconfigurations build

* Update docs

* make runtime specific pkgs non packable

* io.ports native pkg fixes

3 years ago[main] Update dependencies from 11 repositories (#56719)
dotnet-maestro[bot] [Fri, 6 Aug 2021 09:33:52 +0000 (11:33 +0200)]
[main] Update dependencies from 11 repositories (#56719)

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

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.21373.11 -> To Version 6.0.0-beta.21376.4

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

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-rc.1.21369.1 -> To Version 6.0.0-rc.1.21376.1

* Update dependencies from https://github.com/dotnet/xharness build 20210727.2

Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Xunit
 From Version 1.0.0-prerelease.21373.1 -> To Version 1.0.0-prerelease.21377.2

* Update dependencies from https://github.com/dotnet/llvm-project build 20210726.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.21369.1 -> To Version 11.1.0-alpha.1.21376.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20210726.2

System.ComponentModel.TypeConverter.TestData , System.Drawing.Common.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Windows.Extensions.TestData
 From Version 6.0.0-beta.21371.1 -> To Version 6.0.0-beta.21376.2

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.1-alpha.0.21369.1 -> To Version 1.0.1-alpha.0.21376.1

* Update dependencies from https://github.com/dotnet/msquic build 20210726.1

System.Net.MsQuic.Transport
 From Version 6.0.0-preview.7.21379.5 -> To Version 6.0.0-preview.7.21376.1

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

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.21374.3 -> To Version 1.0.0-prerelease.21377.3

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

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.21376.4 -> To Version 6.0.0-beta.21377.2

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.1-alpha.0.21376.1 -> To Version 1.0.1-alpha.0.21377.1

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

Microsoft.CodeAnalysis.NetAnalyzers
 From Version 6.0.0-rc1.21375.2 -> To Version 6.0.0-rc1.21377.2

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

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

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20210728.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.21377.3 -> To Version 1.0.0-prerelease.21378.5

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

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.21377.2 -> To Version 6.0.0-beta.21378.2

* Update dependencies from https://github.com/dotnet/xharness build 20210728.1

Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Xunit
 From Version 1.0.0-prerelease.21377.2 -> To Version 1.0.0-prerelease.21378.1

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.1-alpha.0.21377.1 -> To Version 1.0.1-alpha.0.21378.1

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

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

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

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.21378.5 -> To Version 1.0.0-prerelease.21379.4

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

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.21378.2 -> To Version 6.0.0-beta.21379.2

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.1-alpha.0.21378.1 -> To Version 1.0.2-alpha.0.21380.1

* Update dependencies from https://github.com/dotnet/msquic build 20210729.5

System.Net.MsQuic.Transport
 From Version 6.0.0-preview.7.21376.1 -> To Version 6.0.0-preview.7.21379.5

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.2-alpha.0.21380.1 -> To Version 1.0.2-alpha.0.21380.3

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.2-alpha.0.21380.3 -> To Version 1.0.2-alpha.0.21381.1

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

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

* fix log formatting

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

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

* Update dependencies from https://github.com/dotnet/llvm-project build 20210802.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.21369.1 -> To Version 11.1.0-alpha.1.21402.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20210802.1

System.ComponentModel.TypeConverter.TestData , System.Drawing.Common.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Windows.Extensions.TestData
 From Version 6.0.0-beta.21371.1 -> To Version 6.0.0-beta.21402.1

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.1-alpha.0.21369.1 -> To Version 1.0.2-alpha.0.21402.1

* Remove wrong parameter in JsonConsoleFormatterTests.cs

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.1-alpha.0.21369.1 -> To Version 1.0.2-alpha.0.21403.1

* Downgrade io.ports native

* Update Version.Details.xml

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

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.21373.11 -> To Version 6.0.0-beta.21379.2

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

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.21373.11 -> To Version 6.0.0-beta.21403.5

* Revert sdk bump

* Fixup

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

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.21373.11 -> To Version 6.0.0-beta.21403.5

* Update dependencies from https://github.com/dotnet/xharness build 20210804.1

Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Xunit
 From Version 1.0.0-prerelease.21373.1 -> To Version 1.0.0-prerelease.21404.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20210805.1

System.ComponentModel.TypeConverter.TestData , System.Drawing.Common.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Windows.Extensions.TestData
 From Version 6.0.0-beta.21371.1 -> To Version 6.0.0-beta.21405.1

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

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

* Bump arcade

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Co-authored-by: Aleksey Kliger (λgeek) <alklig@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
3 years ago[HTTP/3] Reenable interop tests (#56867)
Marie Píchová [Fri, 6 Aug 2021 07:35:12 +0000 (09:35 +0200)]
[HTTP/3] Reenable interop tests (#56867)

* Reenabled tests

* Fixed interop tests, fixed handling of 0-byte DATA frame

* Addressed comments

3 years agoHTTP/3 Reenabled cookie tests (#56831)
Marie Píchová [Fri, 6 Aug 2021 07:30:52 +0000 (09:30 +0200)]
HTTP/3 Reenabled cookie tests (#56831)

* Reenabled cookie tests

* Disabled mock cookie tests

* Handle H_REQUEST_REJECTED with retry

* Reenable mock

* Disabled only tests which use more than 1 server connection

3 years agoRemove unstable ThreadPool events test (#56680)
Noah Falk [Fri, 6 Aug 2021 07:18:26 +0000 (00:18 -0700)]
Remove unstable ThreadPool events test (#56680)

The threadpool events being verified by this test aren't
guaranteed to occur given the test code. All of them are
the results of background timers and relative execution
speed of work items. Given the relatively low event coverage
of the existing test and my historical understanding that
specific events don't often regress, trying to stabilize this test
is probably more hassle than it is worth.

3 years agoUpdate nullability for the value parameter in JsonConverter<T>.Write() (#56863)
Steve Harter [Fri, 6 Aug 2021 07:05:58 +0000 (02:05 -0500)]
Update nullability for the value parameter in JsonConverter<T>.Write() (#56863)

* Update nullability for the value paramter in JsonConverter<T>.Write()

* Change formatting; move XML comment

* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/JsonConverterOfT.cs

* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/JsonConverterOfT.cs

Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
3 years agoImprove error handling for task RuntimeConfigParser (#56942)
Fan Yang [Fri, 6 Aug 2021 06:15:01 +0000 (02:15 -0400)]
Improve error handling for task RuntimeConfigParser (#56942)

* Improve error handling

* Update src/tasks/RuntimeConfigParser/RuntimeConfigParser.cs

Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
* Update src/tasks/RuntimeConfigParser/RuntimeConfigParser.cs

Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
* Fix error

Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
3 years agoHTTP3: Dispose HTTP3 connection when HttpClientHandler is disposed (#56943)
Geoff Kizer [Fri, 6 Aug 2021 04:43:16 +0000 (21:43 -0700)]
HTTP3: Dispose HTTP3 connection when HttpClientHandler is disposed (#56943)

* dispose Http3Connection when HttpClient is disposed

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years agofix typos in xmldoc (#56764)
Dan Moseley [Fri, 6 Aug 2021 03:15:52 +0000 (21:15 -0600)]
fix typos in xmldoc (#56764)

3 years agoImprove collections assert (#56946)
Dan Moseley [Fri, 6 Aug 2021 03:11:11 +0000 (21:11 -0600)]
Improve collections assert (#56946)

3 years agoStop pinning dotnet-pgo to C# 8 (#56947)
Stephen Toub [Fri, 6 Aug 2021 02:23:44 +0000 (22:23 -0400)]
Stop pinning dotnet-pgo to C# 8 (#56947)

3 years agoAdd interp to the lane name (#56928)
Fan Yang [Thu, 5 Aug 2021 23:57:18 +0000 (19:57 -0400)]
Add interp to the lane name (#56928)

3 years ago[main] Update dependencies from mono/linker (#56905)
dotnet-maestro[bot] [Thu, 5 Aug 2021 21:34:17 +0000 (16:34 -0500)]
[main] Update dependencies from mono/linker (#56905)

* Update dependencies from https://github.com/mono/linker build 20210804.1

Microsoft.NET.ILLink.Tasks
 From Version 6.0.100-preview.6.21403.3 -> To Version 6.0.100-preview.6.21404.1

* Update dependencies from https://github.com/mono/linker build 20210805.1

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

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
3 years agoAdd a forgotten `fgMorphInitBlock` to fix jitstress issue. (#56893)
Sergey Andreenko [Thu, 5 Aug 2021 19:47:13 +0000 (12:47 -0700)]
Add a forgotten `fgMorphInitBlock` to fix jitstress issue. (#56893)

* reenable the failing tests.

* Fix  a jitstress failure on x86.

3 years agoRename interoplibinterface.cpp -> interoplibinterface_comwrappers.cpp (#56921)
Elinor Fung [Thu, 5 Aug 2021 19:44:13 +0000 (12:44 -0700)]
Rename interoplibinterface.cpp -> interoplibinterface_comwrappers.cpp (#56921)

3 years agoFix CustomAttributeData in the presence of generic attributes (#56879)
David Wrighton [Thu, 5 Aug 2021 19:34:21 +0000 (12:34 -0700)]
Fix CustomAttributeData in the presence of generic attributes (#56879)

* Fix CustomAttributeData in the presence of generic attributes
- Generic attributes need to force the actual exact method to be loaded not just the canonical scenario
- GenericAttribute testing had been disabled due to dotnet/msbuild#6734
- Move GenericAttribute test project to Pri0 as its the only generic custom attribute runtime testing that will occur before .NET 6.0 ships
- Test disabled on Mono as Mono currently doesn't support this feature.

Fixes #56492

3 years agoUpdate the (Get|Set)CompressedStack obsoletions to use SYSLIB0003 (#56874)
Jeff Handley [Thu, 5 Aug 2021 19:10:49 +0000 (15:10 -0400)]
Update the (Get|Set)CompressedStack obsoletions to use SYSLIB0003 (#56874)

* Update the (Get|Set)CompressedStack obsoletions to use SYSLIB0003

* Update test suppression

3 years agofix h/3 ResponseContent with large buffer (#56892)
Tomas Weinfurt [Thu, 5 Aug 2021 18:23:17 +0000 (11:23 -0700)]
fix h/3 ResponseContent with large  buffer (#56892)

3 years ago[Mono]: Include IL pdb signature, age and path in EventPipe module events. (#56907)
Johan Lorensson [Thu, 5 Aug 2021 18:19:25 +0000 (20:19 +0200)]
[Mono]: Include IL pdb signature, age and path in EventPipe module events. (#56907)

3 years agoDisable tests on MacCatalyst (#56826)
Vlad Brezae [Thu, 5 Aug 2021 18:07:23 +0000 (21:07 +0300)]
Disable tests on MacCatalyst (#56826)

Due to lack of execute permissions

3 years agoImplement DefType.IsUnsafeValueType (#56790)
Jakob Botsch Nielsen [Thu, 5 Aug 2021 17:35:30 +0000 (19:35 +0200)]
Implement DefType.IsUnsafeValueType (#56790)

Co-authored-by: Michal Strehovský <MichalStrehovsky@users.noreply.github.com>
3 years agohandle QuicConnectionAbortedException (#56785)
Tomas Weinfurt [Thu, 5 Aug 2021 17:26:00 +0000 (10:26 -0700)]
handle QuicConnectionAbortedException (#56785)

3 years agoUpdate some XML doc comments per feedback (#56886)
Dan Moseley [Thu, 5 Aug 2021 16:27:25 +0000 (10:27 -0600)]
Update some XML doc comments per feedback (#56886)

* IndentedTextWriter

* StringInfo

* StringSegment

* GHC

* Remove HTML

* feedback

3 years agoRespect AppContext.SetData with APP_CONFIG_FILE key (#56748)
Krzysztof Wicher [Thu, 5 Aug 2021 16:14:46 +0000 (18:14 +0200)]
Respect AppContext.SetData with APP_CONFIG_FILE key (#56748)

* Respect AppContext.SetData with APP_CONFIG_FILE key

* apply feedback (use BaseDirectory and FileCleanupTestBase)

* avoid using GetFullPath with 2 arguments as it's not available everywhere

* trim all directory separators rather than single

* cleanupRootDirectory -> tempDirectory

* fix absolute paths on linux

3 years agoFix failling stress test (#56859)
Buyaa Namnan [Thu, 5 Aug 2021 15:59:52 +0000 (08:59 -0700)]
Fix failling stress test (#56859)

3 years agoDo not prevent Extensions.FileProviders tests from running in browser (#56257)
David Cantú [Thu, 5 Aug 2021 15:42:45 +0000 (08:42 -0700)]
Do not prevent Extensions.FileProviders tests from running in browser (#56257)

* Do not prevent Extensions.FileProviders tests from running in CI

* Remove SkipOnPlatform

* Do not throw PNSE for PhysicalFileProvider in browser, fallback to use polling instead

* Use SkipOnPlatform only on tests that use FileSystemWatcher

* Set UsePollingFileWatcher and UseActivePolling for browser to avoid ArgumentNullException in PhysicalFilesWatcher

* Fix Moq CI failures

* Use Assert.Same instead of Assert.Equals

* Disable tests for IChangeToken equality between multiple Watch() calls in Browser

3 years agoDo not overwrite JsonException metadata (#56903)
Eirik Tsarpalis [Thu, 5 Aug 2021 15:06:57 +0000 (18:06 +0300)]
Do not overwrite JsonException metadata (#56903)

* Do not overwrite JsonException metadata. Fix #51537.

* remove redundant semicolon

3 years ago[mono] Fix the error handling in a call to interp_create_method_pointer (). (#56883)
Zoltan Varga [Thu, 5 Aug 2021 13:40:18 +0000 (09:40 -0400)]
[mono] Fix the error handling in a call to interp_create_method_pointer (). (#56883)

3 years agoEliminate code duplication of OnWriteResume methods of collection converters (#55991)
Eirik Tsarpalis [Thu, 5 Aug 2021 13:37:55 +0000 (16:37 +0300)]
Eliminate code duplication of OnWriteResume methods of collection converters (#55991)

* remove code duplication in collection converters

* remove code duplication in dictionary converters

3 years agoBuild rid specific pkgs under condition and -s390x (#56906)
Viktor Hofer [Thu, 5 Aug 2021 13:21:32 +0000 (15:21 +0200)]
Build rid specific pkgs under condition and -s390x (#56906)

Build rid specific packages under libraries only when targeting the
primary runtime flavor to avoid duplicate packages being published.

Remove the runtime.native.System.IO.Ports s390x variant as that one
isn't built in official builds and causes the restore of the
meta package runtime.native.System.IO.Ports to fail because of its
missing dependency.

3 years agoAdd RequiresUnreferencedCode to DefinePInvokeMethod (#56537)
Krzysztof Wicher [Thu, 5 Aug 2021 12:29:55 +0000 (14:29 +0200)]
Add RequiresUnreferencedCode to DefinePInvokeMethod (#56537)

* Add RequiresUnreferencedCode to DefinePInvokeMethod

* adjust message per PR feedback

3 years ago[libraries][Android] Reenable System.Diagnostics.Debug, System.Net.Http.Json, System...
Mitchell Hwang [Thu, 5 Aug 2021 11:33:47 +0000 (07:33 -0400)]
[libraries][Android] Reenable System.Diagnostics.Debug, System.Net.Http.Json, System.Net.Ping, System.Security.Cryptography.X509Certificates (#56852)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoDisable formatter test on Mono: COM support is disabled on Mono runtime. (#56806)
Steve Molloy [Thu, 5 Aug 2021 11:27:14 +0000 (04:27 -0700)]
Disable formatter test on Mono: COM support is disabled on Mono runtime. (#56806)

This particular test is using a COM object, but COM support is
disabled on Mono runtime.

3 years ago[libraries][Android] Remove System.Threading.Tests activeIssue (#56878)
Mitchell Hwang [Thu, 5 Aug 2021 11:24:13 +0000 (07:24 -0400)]
[libraries][Android] Remove System.Threading.Tests activeIssue (#56878)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoFix the compilation error (#56889)
Kunal Pathak [Thu, 5 Aug 2021 11:20:17 +0000 (04:20 -0700)]
Fix the compilation error (#56889)

3 years ago[wasm][debugger] Ensure debugger is disabled (#56885)
Jérôme Laban [Thu, 5 Aug 2021 10:52:55 +0000 (06:52 -0400)]
[wasm][debugger] Ensure debugger is disabled (#56885)

3 years agoFix illumos build regressions (#55916)
Adeel Mujahid [Thu, 5 Aug 2021 09:09:59 +0000 (12:09 +0300)]
Fix illumos build regressions (#55916)

Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Adam Sitnik <adam.sitnik@gmail.com>
3 years agoReplace all remaining pkgprojs with NuGet Pack task (#56712)
Viktor Hofer [Thu, 5 Aug 2021 09:03:23 +0000 (11:03 +0200)]
Replace all remaining pkgprojs with NuGet Pack task (#56712)

* Runtime specific and doc file packaging fixes

* Replace all remaining pkgprojs with NuGet Pack task

* Avoid NuGet/Home/issues/10368

* Update PackageValidation package to latest

3 years agoFix lock during SslStream renegotiation request (#56470)
Jan Jahoda [Thu, 5 Aug 2021 08:53:58 +0000 (10:53 +0200)]
Fix lock during SslStream renegotiation request (#56470)

* Change lock and buffer test order

* revert _nestedAuth clearing

* Clear nested lock

* Remove ability to renegotiate again when fail

3 years agoMake typesystem tests anycpu (#56881)
David Wrighton [Thu, 5 Aug 2021 07:20:54 +0000 (00:20 -0700)]
Make typesystem tests anycpu (#56881)

- Allows running the -test switch with architectures other than the machine local architecture

Fixes #56734

3 years agoEnsure FileStream.Position is correct after a failed|cancelled WriteAsync attempt...
Adam Sitnik [Thu, 5 Aug 2021 05:56:29 +0000 (07:56 +0200)]
Ensure FileStream.Position is correct after a failed|cancelled WriteAsync attempt (#56716)

3 years agoRemove some Linq usages in ComponentModel.Annotations (#56753)
Eric Erhardt [Thu, 5 Aug 2021 03:40:07 +0000 (22:40 -0500)]
Remove some Linq usages in ComponentModel.Annotations (#56753)

* Remove some Linq usages in ComponentModel.Annotations

Contributes to #56631

* PR feedback

* fixup

3 years agoEnable WASM AOT microbenchmark run (#55353)
Alicia Li [Thu, 5 Aug 2021 03:00:15 +0000 (20:00 -0700)]
Enable WASM AOT microbenchmark run (#55353)

* bring up WASM AOT microbenchmarks run

* bring up WASM AOT microbenchmarks run

* adding diagnostice log for testing

* commend out some jobs while testing to save lab run resource

* commend out some jobs while testing to save lab run resource

* Add WASM AOT in not scheduled run

* Only run selected jobs

* add "ls -l" to print out permission before calling performance-setup.sh

* add "ls -l" to print out permission before calling performance-setup.sh

* Add "--buildTimeout 3600" to benchmarkdotnet to extend default timeout time. Adjust -aotcompilermode format to "--aotcompilermode=wasm".

* Add "--buildTimeout 3600" to benchmarkdotnet to extend default timeout time. Adjust -aotcompilermode format to "--aotcompilermode=wasm".

* Correct runtimeSrcDir value

* Correct --runtimeSrcDir location to $HELIX_CORRELATION_PAYLOAD

* Correct --runtimeSrcDir location to $HELIX_CORRELATION_PAYLOAD

* Remove not used parameters in WASM AOT mode and  add temperary diagnostic info

* Remove not used parameters in WASM AOT mode and  add temperary diagnostic info

* make \$HELIX_CORRELATION_PAYLOAD/dotnet-wasm to be the root directory of runtime repo source

* Only copy runtime repo source directory to helix payload when it's wasm aot

* Add diagnosic log for testing only

* omite unneeded runtime repo file from helix payload

* omite unneeded runtime repo file from helix payload

* use rsync instead of cp exclusion command since cp doesn't work with sub directory as expected.

* Add temp diagnostic logging, should be removed before PR.

* remove artifacts/obj from helix payload

* remove artifacts/obj from helix payload

* copy back helix job for diagnosis and silent rsync

* For testing only, clone performance repor alicial/hikeMicro-benchmark private branch, which contains copying back helix job folder for diagnosis

* enable rsync verbose for diagnosis

* add --keepfiles for wasm intepreter as well for diagnosis

* Remove temporary diagnostic code

* recover all the jobs in the pipeline

* recover all the jobs in the pipeline

* copy wasm build drop to the location that aot build expects

* using private perf branch to enable binlog for benchmarkdotnet for diagnosis

* comment out none wasm runs temporarily for testing only

* comment out none wasm runs temporarily for testing only

* add "--keepfiles" to keep diagnostic files

* fixed $wasm_dotnet_path/artifacts/BrowserWasm/artifacts path

* instead of copy, move $wasm_dotnet_path/artifacts/BrowserWasm/artifacts/* to save space

* benchmarkdotnet using --cli \$HELIX_CORRELATION_PAYLOAD/dotnet-wasm/dotnet.sh instead

* benchmarkdotnet using --cli \$HELIX_CORRELATION_PAYLOAD/dotnet-wasm/dotnet.sh instead

* add executable permission

* Enable other non run to compare

* Enable other non run to compare

* remove "--cli \$HELIX_CORRELATION_PAYLOAD/dotnet-wasm/dotnet.sh"

* fixes per CR

* copy EMSDK_PATH to expected location in helix payload

* install emsdk

* fix emsdk path

* minor fix

* removed more not used files to reduce helix payload size

* remove more jobs for testing purpose

* Fix the download path

* Add BenchmarkDotNet sources to the payload

* Fix __download__ path

* set BenchmarkDotNetSources to use benchmarkdotnet built from source

* use benchmarkdotnet private branch:alicial/tempwasmaot for BenchmarkDotNetSources

* use benchmarkdonet private branch with BenchmarkDotNetSources option

* Debug prints

* Clone B.NET to different location

Fix rsync exclusion
Add more debug prints

* Move B.NET back, clone upstream B.NET

To avoid:

    [INFO] ERROR(S):
    [INFO]   Option 'BenchmarkDotNetSources' is unknown.

* Use my branch for performance repo

* Revert "set BenchmarkDotNetSources to use benchmarkdotnet built from source"

This reverts commit bccfadde684922c0440d928224c8e7ec7c220fe9.

To avoid:

    [INFO] ERROR(S):
    [INFO]   Option 'BenchmarkDotNetSources' is unknown.

* Disable one more job I missed in merge

* Switch back to nuget packages for BenchmarkDotNet

* tempararily use pr-alicias-branch to test new fixes

* [mono] Fix invalid memory write

Fixes https://github.com/dotnet/runtime/issues/56526 and probably also
https://github.com/dotnet/runtime/issues/53546

Allocate enough memory when `SIZEOF_REGISTER == 4`, so that code like

    defs [ins->dreg + 1] = NULL;
    defs [ins->dreg + 2] = NULL;

doesn't write after allocated range.

* [mono] Fix an uninitialized memory access in the ABCREM pass.

Detected by valgrind.

* clean up PR

* add missing param

* fix perf.yml and make wasm interpreter to be consistent with wasm AOT

* comment out more job for fast testing

* remove extra job

* exclude copying __download__ dir instead of delete it.

* add parameters.codeGenType

* fix aot javascriptengine

* correct livelibrariesbuildconfig from release to Release

* install emsdk before copy $source_directory

* add back all the temporarily commented out jobs in perf.yml

* clean up work around code

* minor clean up

* remove performance submodule

* switch back to use performance repo main branch

* add --quiet to git clone

Co-authored-by: Radek Doulik <radekdoulik@gmail.com>
Co-authored-by: Zoltan Varga <vargaz@gmail.com>
3 years ago[wasm] System.Data.Tests - add debug info, to help with the test failure (#56838)
Ankit Jain [Thu, 5 Aug 2021 00:52:42 +0000 (20:52 -0400)]
[wasm] System.Data.Tests - add debug info, to help with the test failure (#56838)

`System.Data.Tests.AppDomainsAndFormatInfo.Bug55978` fails sometimes for
wasm:

```
Assert.Equal() Failure
Expected: 2
Actual:   3

Stack trace
   at System.Data.Tests.AppDomainsAndFormatInfo.Bug55978()
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
```

To debug the issue, this dumps some state when the test fails.

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

3 years agoupdate and enable ReadOutstanding_ReadAborted_Throws test (#56839)
Tomas Weinfurt [Thu, 5 Aug 2021 00:26:15 +0000 (17:26 -0700)]
update and enable ReadOutstanding_ReadAborted_Throws test (#56839)