platform/upstream/dotnet/runtime.git
3 years agoJS api for creating GC roots to store temporary object references in (#40645)
Katelyn Gadd [Thu, 13 Aug 2020 18:47:05 +0000 (11:47 -0700)]
JS api for creating GC roots to store temporary object references in (#40645)

Our current JS is not GC safe and as a result if a GC happens at the wrong time, objects being used by JS can get collected. This PR is a partial solution for the issue that introduces an API for allocating root buffers where you can store GC object references while JS code is manipulating them. Two convenience APIs are layered on top for creating single temporary roots. The PR updates some of the existing bindings APIs to make use of temporary roots when manipulating managed objects.

3 years agoAdd link to @msftbot configuration for admins (#40789)
Karel Zikmund [Thu, 13 Aug 2020 17:51:45 +0000 (19:51 +0200)]
Add link to @msftbot configuration for admins (#40789)

Add link to configuration of msftbot notifications for easier access for admins.

3 years agoMisspelling for "sitations" (#40749)
symphony [Thu, 13 Aug 2020 17:36:58 +0000 (01:36 +0800)]
Misspelling for "sitations" (#40749)

* Path change for ryujit-overview.md

* Update src/coreclr/src/jit/compiler.cpp

* Misspelling for "situations"

* Misspelling for "situations"

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agoImprove perf of hash one-shots on Win10
Levi Broderick [Thu, 13 Aug 2020 17:35:00 +0000 (10:35 -0700)]
Improve perf of hash one-shots on Win10

3 years agoMake Linux fetch timeout behavior for chain building more consistent with Windows
Kevin Jones [Thu, 13 Aug 2020 17:30:42 +0000 (13:30 -0400)]
Make Linux fetch timeout behavior for chain building more consistent with Windows

Change the UrlRetrievalTimeout behavior on Linux to match Windows'
existing behavior of using a per-operation timeout rather than cumulative.

Windows 8.1 and Windows 10 seem to have different upper limits for the UrlRetrievalTimeout.  Linux matches the Windows 10 version (which is lower: 1 minute).

3 years ago[browser] Mark APIs as unsupported on browser (#40612)
Maxim Lipnin [Thu, 13 Aug 2020 16:55:30 +0000 (19:55 +0300)]
[browser] Mark APIs as unsupported on browser (#40612)

* Mark System.Security.Cryptography.OpenSsl as unsupported on browser

* Mark other System.Security.Cryptography APIs as unsupported on browser

* Mark System.Data.Odbc.* as unsupported on browser

* Mark System.DirectoryServices.Protocols APIs as unsupported on browser

* Mark System.Drawing.Common APIs as unsupported on browser

* Mark System.IO.Ports as unsupported on browser

3 years agoensure we can cancel a write operation while we are waiting for a write on the HTTP2...
Geoff Kizer [Thu, 13 Aug 2020 16:53:08 +0000 (09:53 -0700)]
ensure we can cancel a write operation while we are waiting for a write on the HTTP2 connection to complete (#39654)

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years ago[wasm][tests] Support running tests with a browser (#40173)
Ankit Jain [Thu, 13 Aug 2020 16:52:22 +0000 (12:52 -0400)]
[wasm][tests] Support running tests with a browser (#40173)

* [wasm][tests] Support running tests with a browser

- WasmAppBuilder will generate an `index.html` which will be used to run
the tests
- runtime-test.js: For the browser case, a simple `exit` doesn't end the script
execution, so we explicitly `return` in the code, to stop.

* Update tools-local/tasks/mobile.tasks/WasmAppBuilder/WasmAppBuilder.cs

Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
* [wasm] runtime-test.js: correctly load js files in the browser case

* [wasm][tests] runtime-test.js: Add a special element on exit, which the

.. `wasm test-browser` command can watch for.

* Update src/mono/wasm/runtime-test.js

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
* runtime-test.js: Correctly handle the case of no arguments.

* runtime-test.js: Ensure `arguments` is not undefined

Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
3 years agoEnable Http2.0 tests for Http telemetry (#40763)
Miha Zupan [Thu, 13 Aug 2020 15:28:05 +0000 (17:28 +0200)]
Enable Http2.0 tests for Http telemetry (#40763)

3 years agoImprovements to allocation performance on machines with many processors (#32539)
Peter Sollich [Thu, 13 Aug 2020 15:20:47 +0000 (17:20 +0200)]
Improvements to allocation performance on machines with many processors (#32539)

* Improvements to allocation performance on machines with many processors. In particular:

- Make sure we reserve memory on the correct NUMA node. Otherwise the OS will pick a NUMA node for us on first touch, which is sometimes correct, sometimes not.

- Only look at a subset of the available heaps in balance_heaps. Look at a different subset each time, and look both at heaps inside and outside the allocating processor's NUMA node, but give preference to heaps within the allocating processor's NUMA node and in particular, the heap associated with the allocating processor.

- Fix issue where our logic assumed that NUMA node numbers are non-decreasing as the processor numbers increase, but this doesn't hold true on all machines.

- Fix issue where we decreased the number of heaps to 1 in the special case of using large pages with the size for the pinned object heap set to 0.

Results for a pure allocation test on a 4 socket NUMA machine (128 cores, 256 processors) showed improvements ranging from 18 to 28%. A 2 socket Intel machine (56 cores, 56 processors) showed results ranging from a 3% regression to an 8% improvement.

3 years agoremove CheckForOverflowUnderflow from eventsource redist (#40757)
David Mason [Thu, 13 Aug 2020 15:15:48 +0000 (08:15 -0700)]
remove CheckForOverflowUnderflow from eventsource redist (#40757)

3 years agoRemove pinned MicrosoftNetCompilersToolsetVersion from Version.props (#40760)
Stephen Toub [Thu, 13 Aug 2020 14:56:19 +0000 (10:56 -0400)]
Remove pinned MicrosoftNetCompilersToolsetVersion from Version.props (#40760)

3 years agoEnsure that no exception is thrown when static properties on the Activity type are...
Layomi Akinrinade [Thu, 13 Aug 2020 14:18:49 +0000 (07:18 -0700)]
Ensure that no exception is thrown when static properties on the Activity type are passed to EventListener (#40549)

3 years agoUpdating ClaimsPrincipal.Current to default back to Thread.CurrentPrincipal, as was...
Tanner Gooding [Thu, 13 Aug 2020 13:35:32 +0000 (06:35 -0700)]
Updating ClaimsPrincipal.Current to default back to Thread.CurrentPrincipal, as was done on .NET Framework (#40623)

* Updating ClaimsPrincipal.Current to default back to Thread.CurrentPrincipal, as was done on .NET Framework

* Add test that ClaimsPrincipal.Current falls back to Thread.CurrentPrincipal to match .NET Framework.

Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
3 years agoupdate System.Console manual test instructions for macOS (#40773)
Adam Sitnik [Thu, 13 Aug 2020 13:31:45 +0000 (15:31 +0200)]
update System.Console manual test instructions for macOS (#40773)

3 years agoAdded support for CFB
Víťa Tauer [Thu, 13 Aug 2020 12:38:24 +0000 (14:38 +0200)]
Added support for CFB

This change brings the Cipher Feedback (CFB) mode to .NET 5 with the same behaviors as .NET Framework around the non-standard application of PKCS#7 padding based on the feedback block size and decryption the data be algorithm blocksize-aligned.

* AES: CFB8 and CFB128
* TripleDES: CFB8 and CFB64
* DES: CFB8
* RC2: Not supported

Additionally, due to a lack of support in CNG, CFB is not supported on Windows 7.

3 years agoOptimize vectorized sorting - reduce code size, improve speed for large heaps (#40613)
Peter Sollich [Thu, 13 Aug 2020 10:09:49 +0000 (12:09 +0200)]
Optimize vectorized sorting - reduce code size, improve speed for large heaps (#40613)

* Improved vectorized sort - smaller bitonic sorters, dynamic packing/unpacking.

There are two optimizations in this PR:

- reduction of code size in the bitonic sorters: by limiting the amount of inlining in this code, we can reduce overall code size in coreclr.dll by about 180 kB.

- dynamic packing: during sorting, we can switch to 32-bit sorting as soon as the address range in a partition is less 32 GB. This will only have an impact on large heaps or machines with many processors, because we already have a similar, but static optimization where we use 32-bit sorting if the overall address range in the ephemeral region is less than 32 GB. So this additional optimization will give improvements if the overall address range is greater than 32 GB initially, but becomes less during the sort. In this case, we get about a 1.6x improvement in sorting speed.

3 years agoadd Process.Start(string fileName, IEnumerable<string> arguments) overload (#40661)
Adam Sitnik [Thu, 13 Aug 2020 09:32:09 +0000 (11:32 +0200)]
add Process.Start(string fileName, IEnumerable<string> arguments) overload (#40661)

* add Process.Start(string fileName, IEnumerable<string> arguments) overload, fixes #371

3 years ago[master] Update dependencies from dotnet/arcade mono/linker dotnet/llvm-project dotne...
dotnet-maestro[bot] [Thu, 13 Aug 2020 08:09:50 +0000 (08:09 +0000)]
[master] Update dependencies from dotnet/arcade mono/linker dotnet/llvm-project dotnet/xharness dotnet/icu (#40376)

[master] Update dependencies from dotnet/arcade mono/linker dotnet/llvm-project dotnet/xharness dotnet/icu
- Updates:
  - Microsoft.NET.ILLink.Tasks: from 5.0.0-preview.3.20403.5 to 5.0.0-preview.3.20412.1

- Updates:
  - Microsoft.NETCore.Runtime.ICU.Transport: from 5.0.0-preview.8.20403.1 to 5.0.0-preview.8.20410.1

- Updates:
  - Microsoft.DotNet.XUnitExtensions: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.GenFacades: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.Build.Tasks.Feed: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.Build.Tasks.Packaging: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.CodeAnalysis: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.GenAPI: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.XUnitConsoleRunner: from 2.5.1-beta.20374.1 to 2.5.1-beta.20407.3
  - Microsoft.DotNet.Arcade.Sdk: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.Helix.Sdk: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.RemoteExecutor: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.VersionTools.Tasks: from 5.0.0-beta.20374.1 to 5.0.0-beta.20407.3
  - Microsoft.DotNet.ApiCompat: from 5.0.0-beta.20381.6 to 5.0.0-beta.20407.3

- Updates:
  - runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1
  - runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1
  - runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1
  - runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1
  - runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1
  - runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1
  - runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1
  - runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: from 9.0.1-alpha.1.20403.1 to 9.0.1-alpha.1.20410.1

- Updates:
  - Microsoft.DotNet.XHarness.CLI: from 1.0.0-prerelease.20403.2 to 1.0.0-prerelease.20411.1
  - Microsoft.DotNet.XHarness.TestRunners.Xunit: from 1.0.0-prerelease.20403.2 to 1.0.0-prerelease.20411.1

 - Merge branch 'master' into darc-master-cf92596d-90a4-4e3c-8692-fff33361f7e0

 - Merge branch 'master' into darc-master-cf92596d-90a4-4e3c-8692-fff33361f7e0

3 years agoConfigure ping in HTTP2 (#40257)
Jan Jahoda [Thu, 13 Aug 2020 06:51:29 +0000 (08:51 +0200)]
Configure ping in HTTP2 (#40257)

3 years agoAttempt to fix GC stress bugs caused by provisional gen 2 GCs. (#40719)
Peter Sollich [Thu, 13 Aug 2020 01:19:51 +0000 (03:19 +0200)]
Attempt to fix GC stress bugs caused by provisional gen 2 GCs. (#40719)

3 years agoSync HPackDecoder with ASP.NET Core changes (#40689)
James Newton-King [Thu, 13 Aug 2020 00:34:47 +0000 (12:34 +1200)]
Sync HPackDecoder with ASP.NET Core changes (#40689)

* Sync HPackDecoder with ASP.NET Core changes

3 years ago[aot] Fix an assert which is hit for generic instances with a lot of arguments. ...
monojenkins [Thu, 13 Aug 2020 00:02:36 +0000 (20:02 -0400)]
[aot] Fix an assert which is hit for generic instances with a lot of arguments. (#40736)

The c# compiler generates these for anonymous types.

Fixes https://github.com/xamarin/xamarin-macios/issues/9289.

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years ago[wasm] Remove unnecessary console messages. (#40728)
Thays Grazia [Wed, 12 Aug 2020 23:58:59 +0000 (20:58 -0300)]
[wasm] Remove unnecessary console messages. (#40728)

* Changing some console.log to console.debug to not pollute the console.
Changing printf to DEBUG_PRINTF to follow the debug level chosen by user.
Remove unnecessary console.log.

* Removing one more message.

3 years ago[mono][Browser] Update ICU (#40387)
Egor Bogatov [Wed, 12 Aug 2020 23:20:29 +0000 (02:20 +0300)]
[mono][Browser] Update ICU (#40387)

3 years ago[interp] Rework OBJREF and fix a GC issue (#40710)
Vlad Brezae [Wed, 12 Aug 2020 22:40:09 +0000 (01:40 +0300)]
[interp] Rework OBJREF and fix a GC issue (#40710)

* [interp] Remove unnecessary uses of OBJREF

No checkpoints are possible before the returned object is stored on interp stack.

* [interp] Don't rely on scanning C stack in wasm

In order to keep object references alive we were doing a volatile store to the address of a stack local. This would determine the compiler to store to the C stack, which we can scan on wasm. While I didn't see proof that this is not the case, this mechanism seems rather magical and fragile. This commit replaces this mechanism of keeping C locals alive with an explicit store into a handle that we allocate whenever we enter the interpreter. Since we don't require this too frequently (the interp stack is usually enough to keep required objects alive), a single handle is enough.

The added benefit of this is that we can stop scanning the C stack/registers altogether on desktop interpreter in coop mode. This mode replicates the behavior of wasm, uncovering GC bugs that show up there while using desktop interpreter.

* [interp] Make sure exception object is not collected during EH

Most of the time, the exception object comes from a function call in the runtime so it is not kept alive by interp stack.

3 years agoCorrectly handle a cached CRL with no NextUpdate on Linux
Kevin Jones [Wed, 12 Aug 2020 22:33:24 +0000 (18:33 -0400)]
Correctly handle a cached CRL with no NextUpdate on Linux

Treat a CRL with no nextUpdate as cachable for 3 days, then we'll recheck it.

This only seems to (legitimately) happen when the associated CA is nearing end-of-validity.
Either macOS doesn't really support this, or it's just part of their general downplay of CRL, but the tests are disabled there.

3 years agocard mark stealing fix (#40646)
Maoni Stephens [Wed, 12 Aug 2020 19:57:19 +0000 (12:57 -0700)]
card mark stealing fix (#40646)

When we are doing card mark stealing, different GC threads will be updating n_eph/n_gen
and whichever thread happens to mark the heap last will overwrite previous n_eph/n_gen
with its calculation. We need to accumulate updates from all threads that work on a heap.

3 years agoRemove duplicate System.Private.CoreLib.ni.pdb symbol file from the crossgen2 symbol...
Jeremy Koritzinsky [Wed, 12 Aug 2020 18:56:04 +0000 (11:56 -0700)]
Remove duplicate System.Private.CoreLib.ni.pdb symbol file from the crossgen2 symbol pacakge. (#40726)

3 years ago[wasm] Fix debugger tests source format (#40725)
Thays Grazia [Wed, 12 Aug 2020 18:55:11 +0000 (15:55 -0300)]
[wasm] Fix debugger tests source format (#40725)

* Fix format using dotnet format tool

* Fix wasm debugger source format using dotnet-format tool.

3 years agoAdditional HTTP/3 and QUIC fixes (#40675)
Cory Nelson [Wed, 12 Aug 2020 18:22:47 +0000 (11:22 -0700)]
Additional HTTP/3 and QUIC fixes (#40675)

* Fix Content-Length: 0 handling.
Fix exception wrapping behavior.
Make MsQuic async force async completion to avoid loading timing-sensitive MsQuic thread.

3 years ago[browser] Move the test specific code to the right location (#40722)
Larry Ewing [Wed, 12 Aug 2020 18:13:14 +0000 (13:13 -0500)]
[browser] Move the test specific code to the right location (#40722)

* Split out TestHarness related classes

* Move TestHarness files

3 years ago[mono] Fix configure to actually disable dllmap on non-mobile platforms (#40686)
Ryan Lucia [Wed, 12 Aug 2020 16:35:19 +0000 (12:35 -0400)]
[mono] Fix configure to actually disable dllmap on non-mobile platforms (#40686)

`$enable_monodroid` and `$enable_monotouch` are set to no, not an empty string

3 years agoRevert "FormUrlEncodedContent - make key non Nullable (#40267)" (#40711)
Marie Píchová [Wed, 12 Aug 2020 16:17:10 +0000 (18:17 +0200)]
Revert "FormUrlEncodedContent - make key non Nullable (#40267)" (#40711)

This reverts commit b977407c9ec8cd7f87ea9bbab8fb69ad45a747e1.

Co-authored-by: Jan Jahoda <jajahoda@microsoft.com>
3 years agoEnsure re-used local is initialized (#40694)
Charles Stoner [Wed, 12 Aug 2020 15:24:45 +0000 (08:24 -0700)]
Ensure re-used local is initialized (#40694)

3 years agoExecutionContext.Restore (#40322)
Ben Adams [Wed, 12 Aug 2020 15:05:18 +0000 (16:05 +0100)]
ExecutionContext.Restore (#40322)

Add ExecutionContext.Restore

3 years agoReenable NativeLibrary callback tests (#40669)
Sam Patel [Wed, 12 Aug 2020 14:52:57 +0000 (10:52 -0400)]
Reenable NativeLibrary callback tests (#40669)

* Reenable failing tests

Enable tests from https://github.com/dotnet/runtime/issues/35219 after the fixes went in

* address feedback

3 years ago[coop] Use handles for mono_runtime_try_invoke_array (#40614)
Vlad Brezae [Wed, 12 Aug 2020 14:25:41 +0000 (17:25 +0300)]
[coop] Use handles for mono_runtime_try_invoke_array (#40614)

3 years agoEnsure Process.MainWindowTitle and Process.Responding is refreshed (#38385)
Jeroen Oortwijn [Wed, 12 Aug 2020 13:48:12 +0000 (15:48 +0200)]
Ensure Process.MainWindowTitle and Process.Responding is refreshed (#38385)

* Add test for process.MainWindowTitle refresh bug

See #36768.

* Add test for Process.Responding refresh bug

See dotnet#36768.

* Ensure Process.MainWindowTitle is refreshed

See dotnet#36768.

* Ensure Process.Responding is refreshed

See dotnet#36768.

* Made dummyFilePath const

* Fix glaring bugs

* remove Process.Responding test

Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
3 years agoFormUrlEncodedContent - make key non Nullable (#40267)
Jan Jahoda [Wed, 12 Aug 2020 13:35:55 +0000 (15:35 +0200)]
FormUrlEncodedContent - make key non Nullable (#40267)

As described in #38494, it is not easy to use Dictionary to create FormUrlEncodedContent instance.

I revisited the code and it seems to me we shouldn't support nullable keys. Instead of null key we should use empty string.

3 years agoImprove System.Numerics.Matrix3x2 and Matrix4x4 hash codes (#34452)
Roman Marusyk [Wed, 12 Aug 2020 12:45:15 +0000 (15:45 +0300)]
Improve System.Numerics.Matrix3x2 and Matrix4x4 hash codes (#34452)

* Improve System.Numerics.Matrix3x2 and Matrix4x4 hash codes

* Code review fixes

* Code review fixes

3 years agoBroaden checks for BigInteger.Multiply (#1796)
ts2do [Wed, 12 Aug 2020 12:37:56 +0000 (07:37 -0500)]
Broaden checks for BigInteger.Multiply (#1796)

* Broaden checks for BigInteger.Multiply
Multiply methods will call simpler algorithms for additional applicable cases

* Remove duplicated check

* Tuning MultiplyPow10

3 years agoBasic h2c tests (#40702)
Marie Píchová [Wed, 12 Aug 2020 11:16:08 +0000 (13:16 +0200)]
Basic h2c tests (#40702)

Co-authored-by: Stephen Toub <stoub@microsoft.com>
3 years agoHTTP Version Selection (#39201)
Marie Píchová [Wed, 12 Aug 2020 08:26:34 +0000 (10:26 +0200)]
HTTP Version Selection (#39201)

3 years agoFixing Matrix4x4 to use AdvSimd.Negate (#40684)
Tanner Gooding [Wed, 12 Aug 2020 07:12:59 +0000 (00:12 -0700)]
Fixing Matrix4x4 to use AdvSimd.Negate (#40684)

3 years agoRemove throw OperationCanceledException in Host.StopAsync (#40426)
Roman Marusyk [Wed, 12 Aug 2020 06:20:53 +0000 (09:20 +0300)]
Remove throw OperationCanceledException in Host.StopAsync (#40426)

3 years agoRemove the unused local variable 'length' (#40693)
minju [Wed, 12 Aug 2020 05:58:02 +0000 (14:58 +0900)]
Remove the unused local variable 'length' (#40693)

#30457
In line 292, remove the unused variable 'length'.

Thanks.

3 years agoFix some createdump issues (#40687)
Mike McLaughlin [Wed, 12 Aug 2020 05:23:18 +0000 (22:23 -0700)]
Fix some createdump issues (#40687)

 Fix some createdump issues

Fix still generating dump with COMPlus_DbgEnableMiniDump=0 on Windows

Start adding coredump pattern to dump names.  Supported format characters:

  %%  A single % character.
  %d  PID of dumped process (for backwards createdump compatibility).
  %p  PID of dumped process.
  %P  PID of dumped process.
  %e  The process executable filename.
  %E  The process executable filename.
  %h  Hostname return by gethostname().
  %t  Time of dump, expressed as seconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC).

3 years agofix error mapping in HttpWebRequest to handle NetworkException (#40666)
Geoff Kizer [Wed, 12 Aug 2020 03:46:18 +0000 (20:46 -0700)]
fix error mapping in HttpWebRequest to handle NetworkException (#40666)

* fix error mapping in HttpWebRequest to handle NetworkException

* add mapping for SocketError.NoData => NetworkError.HostNotFound

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years ago[aot] Avoid dedup-ing non-public instances. (#40643)
monojenkins [Wed, 12 Aug 2020 03:35:24 +0000 (23:35 -0400)]
[aot] Avoid dedup-ing non-public instances. (#40643)

This will decrease the size of the dedup assembly which can get
large with lots of instances.

Hopefully fixes https://github.com/mono/mono/issues/20224.

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years agoRe-enable tracelogging test for crossgen2 (#40685)
David Wrighton [Wed, 12 Aug 2020 00:50:06 +0000 (17:50 -0700)]
Re-enable tracelogging test for crossgen2 (#40685)

It works now, and appears to have been fixed by a infra fix some time ago

3 years agoadd macOS 11 with arm64 to RID graph (#40644)
Tomas Weinfurt [Wed, 12 Aug 2020 00:04:46 +0000 (17:04 -0700)]
add macOS 11 with arm64 to RID graph (#40644)

3 years ago[VisualBasic] Fix TypeName for COM objects (#40584)
Edison Henrique Andreassy [Tue, 11 Aug 2020 23:34:01 +0000 (20:34 -0300)]
[VisualBasic] Fix TypeName for COM objects (#40584)

* Initial try of TypeName for ComObjects on Windows

* Implemented TypeNameOfCOMObject to use in Versioned.TypeName

* Separated tests of the TypeName for COM objects

* Utils.VBFriendlyName now matches reference source

* Moved TypeName for COM objects tests to VersionedTests

* Added ILLinkTrim.xml as a temporary solution as comented on #35937

* UnsafeNativeMethods are only available on Windows

* Test refactoration

* Skip COM interop test on Mono

* Explicit types in ILLinkTrim.xml

* Call GetTypeFromProgID with throwOnError true

* Disabled TypeName_ComObject test on Windows Nano

3 years agoAdd logger to cache entry to catch exception (#37292)
lindexi [Tue, 11 Aug 2020 22:18:21 +0000 (06:18 +0800)]
Add logger to cache entry to catch exception (#37292)

3 years agoFix handling of collectible thread statics and GC (#40671)
David Wrighton [Tue, 11 Aug 2020 21:54:08 +0000 (14:54 -0700)]
Fix handling of collectible thread statics and GC (#40671)

- NonGc Thread statics helper returns a ByRef, not a pointer for collectible statics
- Add test coverage for collectible statics
- Remove test coverage for converting thread static variable into byref and using that to keep alive the static data as it wasn't fully safe itself

3 years agoRemove unused locals in System.Net.* (#39575)
Matt Kotsenas [Tue, 11 Aug 2020 20:54:08 +0000 (13:54 -0700)]
Remove unused locals in System.Net.* (#39575)

* Remove unused locals in System.Net.HttpListener

* Remove unused local in System.Net.Requests

* Remove unused locals and methods in System.Net.Security

3 years agoFix virtual slot indices in VSD botr example (#40174)
David Wrighton [Tue, 11 Aug 2020 20:44:20 +0000 (13:44 -0700)]
Fix virtual slot indices in VSD botr example (#40174)

3 years agoUpdate README.md
Jan Kotas [Tue, 11 Aug 2020 20:21:02 +0000 (13:21 -0700)]
Update README.md

3 years agomodifies flaky Microsoft.Win32 test (#40673)
Maryam Ariyan [Tue, 11 Aug 2020 19:29:51 +0000 (12:29 -0700)]
modifies flaky Microsoft.Win32 test (#40673)

- TimerElapsedIsRoughlyEquivalentToInterval

3 years agoUpdating Matrix4x4 to accelerate several functions using Arm.AdvSimd (#40054)
Tanner Gooding [Tue, 11 Aug 2020 19:23:13 +0000 (12:23 -0700)]
Updating Matrix4x4 to accelerate several functions using Arm.AdvSimd (#40054)

* Updating Matrix4x4 to accelerate several functions using Arm.AdvSimd

* Fixing Matrix4x4 * Matrix4x4

* Fixing Matrix4x4.Transpose

* Fix a copy paste error with Matrix4x4 != Matrix4x4

3 years agoUpdate Codeowners file (#40662)
Sam Patel [Tue, 11 Aug 2020 19:14:35 +0000 (15:14 -0400)]
Update Codeowners file (#40662)

3 years agomake ConsoleKeyInfo implement IEquatable<ConsoleKeyInfo> (#40660)
Adam Sitnik [Tue, 11 Aug 2020 19:08:27 +0000 (21:08 +0200)]
make ConsoleKeyInfo implement IEquatable<ConsoleKeyInfo> (#40660)

* make ConsoleKeyInfo implement IEquatable<ConsoleKeyInfo>, fixes #2127

* remove unnecessary cast

3 years ago[Wasm] Enable CopyWithData FileSystem test (#40663)
Steve Pfister [Tue, 11 Aug 2020 18:26:30 +0000 (14:26 -0400)]
[Wasm] Enable CopyWithData FileSystem test (#40663)

3 years agoAdded additional LoggerMessage.DefineScope() overloads, with more type parameters...
Jake Meiergerd [Tue, 11 Aug 2020 18:14:52 +0000 (13:14 -0500)]
Added additional LoggerMessage.DefineScope() overloads, with more type parameters (up to 6 like .Define()). (#40568)

3 years agoExtensions.Logging: JsonConsoleFormatter serializes scope and state properties using...
Alessio Franceschelli [Tue, 11 Aug 2020 18:13:47 +0000 (19:13 +0100)]
Extensions.Logging: JsonConsoleFormatter serializes scope and state properties using native json type (#40067)

3 years agoAdd feed for Nodejs 12.x (#40667)
Drew Scoggins [Tue, 11 Aug 2020 17:44:28 +0000 (10:44 -0700)]
Add feed for Nodejs 12.x (#40667)

3 years agoHTTP/2 Continuation test (#40533)
Marie Píchová [Tue, 11 Aug 2020 17:33:44 +0000 (19:33 +0200)]
HTTP/2 Continuation test (#40533)

3 years agoICommand CanExecuteChanged should be nullable (#40648)
Buyaa [Tue, 11 Aug 2020 16:57:28 +0000 (09:57 -0700)]
ICommand CanExecuteChanged should be nullable (#40648)

3 years agoImprove error details on DNS Telemetry test failure (#40665)
Miha Zupan [Tue, 11 Aug 2020 16:47:36 +0000 (18:47 +0200)]
Improve error details on DNS Telemetry test failure (#40665)

3 years agoFix: FileStream.Dispose silently fails on Dispose when disk has run out of space...
Carlos Sanchez [Tue, 11 Aug 2020 16:39:56 +0000 (09:39 -0700)]
Fix: FileStream.Dispose silently fails on Dispose when disk has run out of space (#38742)

* Save last error info in SafeFileHandle.ReleaseHandle and read it in FileStream.Dispose

* Add manual test

* Remove Debug.Fail from SafeFileHandle, automate the drive filling step in the manual test, add suggested comments, make threadstatic field static.

* Address suggestions

* Update src/libraries/System.IO.FileSystem/tests/ManualTests/ManualTests.cs

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agoFixed XML docs for ILoggingBuilder AddProvider extension method (#40649)
Alessio Franceschelli [Tue, 11 Aug 2020 16:22:02 +0000 (17:22 +0100)]
Fixed XML docs for ILoggingBuilder AddProvider extension method (#40649)

The description of the parameter was reversed.

3 years agoRemove unused locals in System.Security namespaces
Matt Kotsenas [Tue, 11 Aug 2020 16:02:41 +0000 (09:02 -0700)]
Remove unused locals in System.Security namespaces

3 years agoAdd additional Windows-specific APIs (#40610)
Adam Sitnik [Tue, 11 Aug 2020 14:18:34 +0000 (16:18 +0200)]
Add additional Windows-specific APIs (#40610)

* mark System.Data.OleDb assembly as Windows-specific

* mark System.Windows.Extensions assembly as Windows-specific

* mark System.IO.FileInfo Encrypt and Decrypt methods as Windows-specific

* System.Runtime.InteropServices

* VB

* mark entire ComWrappers type as Windows-specific

* mark CspParameters class as Windows-specific

3 years agoRemove max header length check from WebHeaderCollection (#40529)
Natalia Kondratyeva [Tue, 11 Aug 2020 12:26:25 +0000 (15:26 +0300)]
Remove max header length check from WebHeaderCollection (#40529)

Removed conditional max header length check from
System.Net.WebHeaderCollection as it is redundant and produces
puzzling behavior. Removed unused values of WebHeaderCollectionType
enum.

Contributes to #1486

3 years agoFix versionless UCRT probing path (#40642)
Juan Hoyos [Tue, 11 Aug 2020 06:43:58 +0000 (23:43 -0700)]
Fix versionless UCRT probing path (#40642)

3 years agoFix ref counting in ComWrappers tests (#40636)
Elinor Fung [Tue, 11 Aug 2020 03:26:19 +0000 (20:26 -0700)]
Fix ref counting in ComWrappers tests (#40636)

3 years agoEnsure Http Telemetry correctness (#40338)
Miha Zupan [Tue, 11 Aug 2020 02:41:35 +0000 (04:41 +0200)]
Ensure Http Telemetry correctness (#40338)

* Ensure Http Telemetry correctness

* Remove unnecessary GC.SuppressFinalize call

* Add another Telemetry.IsEnabled() check

* Rename MessageShouldEmitTelemetry to MessageAlreadySent_StopNotYetCalled

* Improve Telemetry tests

* Log Aborted instead of Stopped on Connection Dispose

* Ensure request is canceled after a connection is established

3 years agoSuppress GS cookie checks in method epilogs (#40637)
Jan Kotas [Tue, 11 Aug 2020 01:22:13 +0000 (18:22 -0700)]
Suppress GS cookie checks in method epilogs (#40637)

The information about end of GS cookie scope recorded in GC info is not accurate and it cannot even be made accurate without redesign that is not worth it. Detect end of GS cookie scope by comparing it with current SP instead.

Fixes #13041

3 years agoPath change for ryujit-overview.md (#40611)
symphony [Tue, 11 Aug 2020 01:14:37 +0000 (09:14 +0800)]
Path change for ryujit-overview.md (#40611)

3 years agoadd eventsource doc (#40630)
David Mason [Tue, 11 Aug 2020 01:13:14 +0000 (18:13 -0700)]
add eventsource doc (#40630)

3 years agoFix concurrent collections CA1836 rule violations (#40629)
David Cantu [Tue, 11 Aug 2020 01:12:52 +0000 (18:12 -0700)]
Fix concurrent collections CA1836 rule violations (#40629)

* Fix concurrent collections CA1836 rule violations

* Update dogfood analyzer version

3 years agoInline underlying array into ImmutableArray<T>.IsEmpty (#40635)
David Cantu [Tue, 11 Aug 2020 00:35:30 +0000 (17:35 -0700)]
Inline underlying array into ImmutableArray<T>.IsEmpty (#40635)

3 years agoType.IsAssignableTo (#40326)
Ben Adams [Tue, 11 Aug 2020 00:09:14 +0000 (01:09 +0100)]
Type.IsAssignableTo (#40326)

* IsAssignableTo

* ifdef mono C change

* Add Jit optimization

* Add [Intrinsic] attribute

* Add tests

* More tests

* Add null test

3 years agoRemove unused locals in System.ServiceProcess.ServiceController (#39640)
Matt Kotsenas [Tue, 11 Aug 2020 00:02:26 +0000 (17:02 -0700)]
Remove unused locals in System.ServiceProcess.ServiceController (#39640)

Remove unused locals and private methods in
System.ServiceProcess.ServiceController.

This fixes a part of #30457.

3 years ago[runtime] If the initial pinvoke lookup fails, emit some code inside the managed...
Zoltan Varga [Mon, 10 Aug 2020 23:54:22 +0000 (19:54 -0400)]
[runtime] If the initial pinvoke lookup fails, emit some code inside the managed-to-native wrapper to retry to lookup on every call until it succeeds.  (#40153)

* [runtime] If the initial pinvoke lookup fails, emit some code inside the managed-to-native wrapper to
retry to lookup on every call until it succeeds. Add a cache to prevent further lookups.
This is needed on netcore where pinvoke resolver callbacks can be added any time.

* Fix AOT support.

* Remove debug printf.

* Fix test failures.

* Fix a c++-ism.

3 years agoWiden ascii to utf16 (#39510)
Prashanth Govindarajan [Mon, 10 Aug 2020 23:48:35 +0000 (16:48 -0700)]
Widen ascii to utf16 (#39510)

* WidenAsciiToUtf16

* sq

* Address nits

3 years agoUpdate using-dotnet-cli.md (#40580)
Austin Wise [Mon, 10 Aug 2020 22:55:00 +0000 (15:55 -0700)]
Update using-dotnet-cli.md (#40580)

Fixes "error NU1102: Unable to find package Microsoft.WindowsDesktop.App.Runtime.win-x64 with version (= 5.0.0-dev)"

3 years agoDon't call user operator for null check of HttpMethod value (#40306)
Marek Safar [Mon, 10 Aug 2020 22:34:31 +0000 (00:34 +0200)]
Don't call user operator for null check of HttpMethod value (#40306)

3 years agoFix DelayPromise constructor race condition (#40356)
Ben Adams [Mon, 10 Aug 2020 22:34:07 +0000 (23:34 +0100)]
Fix DelayPromise constructor race condition (#40356)

3 years agoDisable SB test (#40628)
Dan Moseley [Mon, 10 Aug 2020 22:12:58 +0000 (15:12 -0700)]
Disable SB test (#40628)

3 years agoSync Microsoft.Extensions ref assembiles for new linker attributes. (#40621)
Eric Erhardt [Mon, 10 Aug 2020 21:19:13 +0000 (16:19 -0500)]
Sync Microsoft.Extensions ref assembiles for new linker attributes. (#40621)

* Sync Microsoft.Extensions ref assembiles for new linker attributes.

* Suppress two linker warnings in DependencyInjection.

These warnings are safe since they are calling Array.Empty<T> through reflection.

3 years agoFixing debugger hang that would occur when inspecting a field that ha… (#40455)
monojenkins [Mon, 10 Aug 2020 21:18:13 +0000 (17:18 -0400)]
Fixing debugger hang that would occur when inspecting a field that ha… (#40455)

…s a Debugger.Break in it's accessor.

fixes mono/mono#20209

<!--
Thank you for your Pull Request!

If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed.

Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number
-->

Co-authored-by: UnityAlex <UnityAlex@users.noreply.github.com>
3 years ago[browser][file system] Tests System.IO.FileSystem (#39768)
Kenneth Pouncey [Mon, 10 Aug 2020 20:35:25 +0000 (22:35 +0200)]
[browser][file system] Tests System.IO.FileSystem (#39768)

* [browser][file system] Tests System.IO.FileSystem

* Remove FileSystem from test project exclusions.

* [browser][filesystem] Comment on skipped tests due to IO.Pipes not supported

* [browser][filesystem] Comment on skipped tests due to monitor not supported

* Address review comments

* Address review comments on how to handle monitor PNSE

* Update src/libraries/System.IO.FileSystem/tests/File/GetSetTimes.cs

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Add ActiveIssue for browser platform

```
        [ActiveIssue("https://github.com/dotnet/runtime/issues/39955", TestPlatforms.Browser)]
        public void NotFoundErrorIsExpected()
```

* Simplify test case with `PlatformDetection.IsSuperUser` as per review comment

* Remove unused variable from tests

* Browser platform volume does not limit each component of the path to a total of 255 characters.

- Remove the test `DirectoryWithComponentLongerThanMaxComponentAsPath_ThrowsException` for Browser platform.
- Add new test `DirectoryWithComponentLongerThanMaxComponentAsPath_BrowserDoesNotThrowsException` for Browser platform in case this check is added in the future.

* Fix windows tests

* Add ActiveIssue to test System.IO.Tests.DirectoryInfo_Name.CurrentDirectory

- System.IO.Tests.DirectoryInfo_Name.CurrentDirectory does not pass because it is using Path.GetFileName on the current directory of "/".
- See issue https://github.com/dotnet/runtime/issues/39998 for more information

* Add active issue for tests that need to support file locking.

* Add active issue for tests that need to support file locking.

* Browser volume does not have a limit on segments

* Remove browser platform test

* Remove active issue for NotFoundErrorIsExpected

* Remove platform specific from SkippingHiddenFiles

* Fix enumeration test errors failing from `HiddenFilesAreReturned`.

- WebAssembly (BROWSER) has dirent d_type but is not identifying correctly but by returning UNKNOWN the managed code properly stats the file to detect if entry is directory or not.

* Fix enumeration test errors failing from `HiddenFilesAreReturned`.

- WebAssembly (BROWSER) has dirent d_type but is not identifying correctly but by returning UNKNOWN the managed code properly stats the file to detect if entry is directory or not.

* Fix build for TARGET_WASM not defined

* Address review comment by add check for IsWindows to IsSuperUser.

* Address review comment by add check for IsWindows to IsSuperUser.

* Platform Specific test for hidden files no longer needed.

* Platform Specific test fno longer needed.

* Use active issue for rename issue

* ActiveIssue no longer needed

- PR https://github.com/dotnet/runtime/pull/40310 works around the issue for now while waiting for fix https://github.com/emscripten-core/emscripten/issues/11804 / https://github.com/emscripten-core/emscripten/pull/11812

* Use ActiveIssue for SettingUpdatesProperties

* Use ActiveIssue for TimesIncludeMillisecondPart

* Use ActiveIssue for ErrorHandlingTests failures

* Use ActiveIssue for SetUptoNanoseconds

* Use ActiveIssue for GetSetTimes test failures

* Use ActiveIssue for tests failing with DirectoryNotFoundException

* Use ActiveIssue for tests failing with UnauthorizedAccessException

* Remove debugging statement from pal_io

* Address type in CreateDirectory method name

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoRemove unused local in System.Configuration.ConfigurationManager (#40583)
wooooooood [Mon, 10 Aug 2020 20:09:20 +0000 (05:09 +0900)]
Remove unused local in System.Configuration.ConfigurationManager (#40583)

3 years agofix certificate ctx on windows and macOS (#39818)
Tomas Weinfurt [Mon, 10 Aug 2020 19:02:08 +0000 (12:02 -0700)]
fix certificate ctx on windows and macOS (#39818)

* fix certificate ctx on windows

* fix linux

* fix osx pal

* feedback from review

* feedback from review

3 years agoFixing an issue with the CPUID check for BMI1/BMI2 (#40615)
Tanner Gooding [Mon, 10 Aug 2020 18:20:34 +0000 (11:20 -0700)]
Fixing an issue with the CPUID check for BMI1/BMI2 (#40615)

3 years agoFix #33948 by decreasing number of tests per group (#40491)
Egor Chesakov [Mon, 10 Aug 2020 18:10:53 +0000 (11:10 -0700)]
Fix #33948 by decreasing number of tests per group (#40491)

3 years agoRun dotnet-format on the debugger source (#40618)
Larry Ewing [Mon, 10 Aug 2020 17:23:50 +0000 (12:23 -0500)]
Run dotnet-format on the debugger source (#40618)

3 years agoUpdate LSRA Doc (#39492)
Carol Eidt [Mon, 10 Aug 2020 17:23:11 +0000 (10:23 -0700)]
Update LSRA Doc (#39492)

* Update LSRA Doc

3 years agoRemove unused variable assignments in CapiHelper
Key Kim [Mon, 10 Aug 2020 16:51:35 +0000 (01:51 +0900)]
Remove unused variable assignments in CapiHelper