Tlakaelel Axayakatl Ceja [Wed, 14 Jul 2021 19:23:32 +0000 (12:23 -0700)]
Update comments on RequiresAssemblyFiles (#55675)
The setter of the Message property in RequiresAssemblyFiles was removed, updating the documentation to reflect that change
Kevin Jones [Wed, 14 Jul 2021 19:22:10 +0000 (15:22 -0400)]
Require CFB8 for persisted CNG keys in CFB mode
This changes AesCng and TripleDESCng to require the feedback size to be
set to '8' when in CFB mode and using a persisted CNG key.
Prior to this change, BasicSymmetricCipherNCrypt ignored the feedback
size which resulted in CFB8 always being used, even if the FeedbackSize
was set to another value. However, when padding was applied, the padding
size would be padded to the feedback size. In the case of AesCng, this
would mean it would be encrypted with CFB8 and padded as if it were
CFB128.
This changes the implementation so that the feedback size is required
to be set to 8 for persisted keys. No change is made for ephemeral keys.
Jeff Schwartz [Wed, 14 Jul 2021 19:15:55 +0000 (12:15 -0700)]
remove Steve as the os-mac-os-x owner (#55671)
Tlakaelel Axayakatl Ceja [Wed, 14 Jul 2021 19:09:16 +0000 (12:09 -0700)]
Unify Requires Attribute (#55622)
Add an overload to RequiresAssemblyFiles to be able to have the same user experience as if using RequiresUnreferencedCode
Theodore Tsirpanis [Wed, 14 Jul 2021 19:01:43 +0000 (22:01 +0300)]
Override the APM methods on AsyncWindowsFileStreamStrategy. (#55203)
* Override the APM methods on AsyncWindowsFileStreamStrategy.
Closes #55172.
* Address PR feedback.
* Update src/libraries/System.Private.CoreLib/src/System/IO/Strategies/AsyncWindowsFileStreamStrategy.cs
* Update AsyncWindowsFileStreamStrategy.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Alexander Köplinger [Wed, 14 Jul 2021 18:51:25 +0000 (20:51 +0200)]
Disable some System.Drawing.Common tests failing on Windows Mono (#55656)
After https://github.com/dotnet/runtime/pull/54884 these tests started failing on Mono on Windows, see https://github.com/dotnet/runtime/issues/55655.
Thays Grazia [Wed, 14 Jul 2021 18:24:33 +0000 (11:24 -0700)]
[wasm][debugger] Implement support to DebuggerDisplay attribute (#55524)
* Support DebuggerDisplay attribute on type.
* Implementing DebuggerDisplay calling methods.
* Apply suggestions from code review
Co-authored-by: Larry Ewing <lewing@microsoft.com>
* Fixing snake case.
* Changing snake case.
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Natalia Kondratyeva [Wed, 14 Jul 2021 18:11:16 +0000 (20:11 +0200)]
HTTP/3 GET Aborted stress scenario fix (#55582)
This adds checks for HTTP/3 specific exceptions to GET Aborted scenario
John Salem [Wed, 14 Jul 2021 17:47:10 +0000 (10:47 -0700)]
Implement JitInfo API (#55046)
Jeremy Koritzinsky [Wed, 14 Jul 2021 17:44:24 +0000 (10:44 -0700)]
Place the CMake command line cache file in the intermediates dir instead of the output dir (#55587)
Fixes an issue where deleting the intermediates folder locally would get the build in a bad state where the command-line check would be up to date but the CMake files would not be generated.
Immo Landwerth [Wed, 14 Jul 2021 17:41:46 +0000 (10:41 -0700)]
Use GitHub issue form for API suggestions (#55659)
Alexander Köplinger [Wed, 14 Jul 2021 17:04:48 +0000 (19:04 +0200)]
Correctly skip PosixSignalRegistrationTests on mobile (#55643)
https://github.com/dotnet/runtime/pull/55569 didn't fix the issue since xunit retrieves the MemberData and checks for non-empty *before* evaluating the ConditionalTheory condition.
Stephen Toub [Wed, 14 Jul 2021 15:33:50 +0000 (11:33 -0400)]
Raise the max size poolable by ArrayPool (#55621)
We previously set an arbitrary cut-off of 2MB max array size. That was before we would trim arrays in response to memory pressure. This now raises the limit as high as we can while maintaining the current power-of-two-based scheme.
Pavel Savara [Wed, 14 Jul 2021 15:10:20 +0000 (17:10 +0200)]
enable working websocket subprotocol test
Katelyn Gadd [Wed, 14 Jul 2021 14:54:04 +0000 (07:54 -0700)]
Migrate various parts of the bindings code to use roots (#55530)
We have a lot of code that passes raw pointers to managed objects around when they should really be using roots instead (i.e. root.value) so that if the GC relocates the object, they won't be using the old address. This PR migrates a bunch of that code so that it uses root objects.
A lot of code remains that does use raw objects, but I read over all of it and the cases appear to be safe because they immediately return it (or return it without calling any other functions).
Ankit Jain [Wed, 14 Jul 2021 14:47:03 +0000 (10:47 -0400)]
[wasm] Run `Wasm.Build.Tests` against workloads (#54451)
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Jon Fortescue [Wed, 14 Jul 2021 14:26:52 +0000 (07:26 -0700)]
Turn on loc PRs (#54293)
* Turn on loc PRs
* oops
Co-authored-by: Jeremy Koritzinsky <jkoritzinsky@gmail.com>
* Keep OneLocBuild running only in main
Co-authored-by: Jeremy Koritzinsky <jkoritzinsky@gmail.com>
Alexander Nikolaev [Wed, 14 Jul 2021 14:05:27 +0000 (16:05 +0200)]
Disable Http2_MultipleConnectionsEnabled_ConnectionLimitNotReached_ConcurrentRequestsSuccessfullyHandled
Reverts #55572. The test is still failing.
Natalia Kondratyeva [Wed, 14 Jul 2021 14:00:44 +0000 (16:00 +0200)]
[QUIC] Cosmetic changes to Read pipeline (#55591)
Follow-up for NITs and cosmetic changes from #55505
Zoltan Varga [Wed, 14 Jul 2021 13:45:04 +0000 (09:45 -0400)]
[mono][wasm] Mark memcpy LLVM instructions as volatile when they are used to copy (#55598)
valuetypes containing references. This is needed to make sure llvm keeps the valuetypes
on the C stack for GC tracking.
Fixes random crashes when running the System.Collections.NonGeneric testsuite.
Stephen Toub [Wed, 14 Jul 2021 13:12:09 +0000 (09:12 -0400)]
Add ArgumentNullException.ThrowIfNull (#55594)
Zoltan Varga [Wed, 14 Jul 2021 12:53:09 +0000 (08:53 -0400)]
[mono][wasm] Avoid compiling llvm bitcode files with -emit-llvm. (#55630)
It causes the output to be a bitcode file as well, which is
passed to the emscripten link step, which will compile it
to wasm sequentially, slowing down linking.
Fixes https://github.com/dotnet/runtime/issues/54935.
Eirik Tsarpalis [Wed, 14 Jul 2021 12:32:27 +0000 (15:32 +0300)]
remove superfluous comment (#55634)
Fix #55389
Thays Grazia [Wed, 14 Jul 2021 12:13:46 +0000 (05:13 -0700)]
[wasm] [debugger] Support method calls (#55458)
* Implement method calls and method calls with simple parameters.
* removing useless change.
* Support const char.
Support object.
* Adding more tests as suggested by @pavelsavara.
* Adding a test calling a method that returns void and change an attribute value.
* Changing what @pavelsavara suggested.
* Fix merge.
Thays Grazia [Wed, 14 Jul 2021 12:13:32 +0000 (05:13 -0700)]
[debugger] Fix debugging after hot reloading (#55599)
* Fix deug after hotreload.
* do not change mono.proj
* fix formatting.
* Remove extra space.
Egor Bogatov [Wed, 14 Jul 2021 11:01:14 +0000 (14:01 +0300)]
Inliner: Extend IL limit for profiled call-sites, allow inlining for switches. (#55478)
Noah Falk [Wed, 14 Jul 2021 10:29:04 +0000 (03:29 -0700)]
DiagnosticSourceEventSource supports base class properties (#55613)
Fixes #41300
Previously DiagnosticSourceEventSource would only iterate and recognize properties that were declared on the most derived type.
Now it can capture properties that were inherited from a base class too.
Ulrich Weigand [Wed, 14 Jul 2021 09:52:27 +0000 (11:52 +0200)]
[mono] Fix race during mono_image_storage_open (#55201)
Zoltan Varga [Wed, 14 Jul 2021 09:07:37 +0000 (05:07 -0400)]
[mono] Add wrapper info for native func wrappers. (#55602)
Fixes https://github.com/dotnet/runtime/issues/55567.
Marie Píchová [Wed, 14 Jul 2021 07:19:45 +0000 (09:19 +0200)]
H/3 and Quic AppContext switch (#55332)
* Renamed AllowDraftHttp3 to AllowHttp3AndQuic app context switch
* Usage of AllowHttp3AndQuic switch in S.N.Quic and enabling it in tests
* Renamed AppContext switch to Http3Support
Eric Erhardt [Wed, 14 Jul 2021 04:14:24 +0000 (23:14 -0500)]
Compression.ZipFile support for Unix Permissions (#55531)
* Compression.ZipFile support for Unix Permissions
When running on Unix, capture the file's permissions on ZipFile Create and write the captured file permissions on ZipFile Extract.
Fix #1548
Zoltan Varga [Wed, 14 Jul 2021 04:12:14 +0000 (00:12 -0400)]
[mono] Fix skipping of static methods during IMT table construction. (#55610)
Fixes https://github.com/dotnet/runtime/issues/55375.
Eric Erhardt [Wed, 14 Jul 2021 03:14:39 +0000 (22:14 -0500)]
Combine System.Private.Xml TrimmingTests projects (#55606)
For some reason we have 2 of them, and only need 1.
Geoff Kizer [Wed, 14 Jul 2021 01:36:43 +0000 (18:36 -0700)]
fix name conflict with Configuration class (#55597)
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Jeremy Barton [Wed, 14 Jul 2021 01:20:19 +0000 (18:20 -0700)]
Finish migrating RSAOpenSsl from RSA* to EVP_PKEY*
This change moves the RSAOpenSsl class (and the RSA.Create() internal class on Linux) to use EVP_PKEY
for the import and export operations, making the interaction with the underlying library based on
PKCS#8 PrivateKeyInfo and X.509 SubjectPublicKeyInfo key blobs.
A large portion of the code is just from splitting the key helpers files to not need all of the encrypted PKCS#8 support
in the System.Security.Cryptography.OpenSsl library, as the encrypted PKCS#8 <-> unencrypted PKCS#8 work provided
by the base classes is sufficient.
Once PKCS#8 and SPKI became the primary modes of interaction the spanified import and export routines for those got
overridden in RSAOpenSsl to avoid SPKI->RSAParameters->SPKI-style conversions.
This change completely eliminates SafeRsaHandle, and the only time that an `RSA*` is used at all is in the legacy RSAOpenSsl(IntPtr) constructor.
Tanner Gooding [Wed, 14 Jul 2021 00:34:26 +0000 (17:34 -0700)]
Disable generic math (#55540)
Kevin Jones [Wed, 14 Jul 2021 00:16:54 +0000 (20:16 -0400)]
Obsolete CryptoConfig.EncodeOID (#55592)
Huo Yaoyuan [Wed, 14 Jul 2021 00:11:58 +0000 (08:11 +0800)]
Address System.Net.Http.WinHttpHandler's nullable warnings targeting .NETCoreApp (#54995)
* Update nullability for WinHttpHandler
* Update project file
* Use ! for PtrToStringUni
* Move assertion of _sessionHandle
* Remove false assertion about RequestHandle.
Alexander Nikolaev [Wed, 14 Jul 2021 00:10:52 +0000 (02:10 +0200)]
Enable Http2_MultipleConnectionsEnabled_ConnectionLimitNotReached_ConcurrentRequestsSuccessfullyHandled (#55572)
* Enable Http2_MultipleConnectionsEnabled_ConnectionLimitNotReached_ConcurrentRequestsSuccessfullyHandled
* Update SocketsHttpHandlerTest.cs
Stephen Toub [Wed, 14 Jul 2021 00:10:24 +0000 (20:10 -0400)]
Fix Task.WhenAny failure mode when passed ICollection of zero tasks (#55580)
Miha Zupan [Tue, 13 Jul 2021 23:44:57 +0000 (16:44 -0700)]
Consume DistributedContextPropagator in DiagnosticsHandler (#55392)
Steve Harter [Tue, 13 Jul 2021 22:40:28 +0000 (17:40 -0500)]
Add property ordering feature (#55586)
Dan Moseley [Tue, 13 Jul 2021 22:33:32 +0000 (16:33 -0600)]
Reduce subtest count in Reflection (#55537)
* Reduce reflection subtest count
* typo
Jeremy Koritzinsky [Tue, 13 Jul 2021 22:26:47 +0000 (15:26 -0700)]
Do PGO restore as part of PGO path lookup. (#55584)
David Wrighton [Tue, 13 Jul 2021 22:25:10 +0000 (15:25 -0700)]
Open types can exist as entries in interface map (#55372)
* Open types can exist as entries in interface map
- While invalid via the ECMA spec, the runtime currently represents a type explicitly instantiated over its own generic type parameters via the open type MethodTable
- This is not strictly correct, as per the spec, these should be represented via an instantiated type, but changing that detail at this time is considered highly risky
- This conflicts with the perf optimization around partialy interface loading which uses the open type of an interface to represent a type instantiated in the curiously recurring fashion.
- The fix is to detect types instantiated over generic variables, and make them ineligible for the optimization, and to detect those cases where the optimization is ineligible, and revert back to the non-optimized behavior
Fixes #55323
Andrew Au [Tue, 13 Jul 2021 22:10:34 +0000 (15:10 -0700)]
Avoid declaring an object cannot fit in a segment if we already have committed space for it (#55585)
Jeff Handley [Tue, 13 Jul 2021 21:33:41 +0000 (14:33 -0700)]
Recognize MacCatalyst as a superset of iOS (#55550)
Recognize MacCatalyst as a superset of iOS and apply platform guard attributes that will inform the analyzer of the relationship.
Stephen Toub [Tue, 13 Jul 2021 21:10:18 +0000 (17:10 -0400)]
Fix length check for Regex BOL FindFirstChar optimization (#55574)
For a beginning-of-line anchor, in FindFirstChar we use IndexOf to quickly skip ahead to the next \n. But we neglected to check to see whether that brought us past an explicitly specified end position. This just adds the missing check.
Andrii Kurdiumov [Tue, 13 Jul 2021 20:47:02 +0000 (02:47 +0600)]
Remove IL2050 in System.Management (#54810)
* Remove IL2050 in System.Management
Remove unused functions which trigger IL2050
As per discussed in #54317
* Fix location of variables
Andrii Kurdiumov [Tue, 13 Jul 2021 20:44:03 +0000 (02:44 +0600)]
Remove IL205 warning for System.Data.Odbc (#54809)
Function which produce warning not used anywhere
Ulrich Weigand [Tue, 13 Jul 2021 20:42:47 +0000 (22:42 +0200)]
[mono] Fix loader incompatibility w.r.t. Resolving event (#54815)
* When loading a non-satellite assembly into a non-default ALC,
invoke the Resolving event in the default ALC first.
* Fixes https://github.com/dotnet/runtime/issues/54814
Natalia Kondratyeva [Tue, 13 Jul 2021 20:38:24 +0000 (22:38 +0200)]
[QUIC] Move ByteMixingOrNativeAVE_MinimalFailingTest to OuterLoop (#55595)
Fixes #55588
Mateo Torres-Ruiz [Tue, 13 Jul 2021 20:16:29 +0000 (13:16 -0700)]
Add runtime property HOSTFXR_PATH (#55369)
* Add property HOSTFXR_PATH
* Comment
* PR feedback
* Use get_own_module_path since we are on hostfxr
* Dispose FileStream
hrrrrustic [Tue, 13 Jul 2021 19:53:12 +0000 (22:53 +0300)]
Remove EventSourceActivity (#55575)
* remove file
* remove a few references to deleted file
* fix corelib
Stephen Toub [Tue, 13 Jul 2021 19:39:47 +0000 (15:39 -0400)]
Simplify PosixSignalRegistration implementation on Unix (#55552)
* Simplify PosixSignalRegistration implementation on Unix
Bring it onto the same scheme as the Windows implementation.
* Address PR feedback
* Delete more dead code
* Update PosixSignalRegistration.Unix.cs
Stephen Toub [Tue, 13 Jul 2021 19:39:29 +0000 (15:39 -0400)]
Disable some PosixSignalRegistration tests on mobile targets (#55569)
xunit doesn't like the fact that some of these MemberDatas were yielding 0 entries on these platforms.
Alexander Nikolaev [Tue, 13 Jul 2021 19:10:16 +0000 (21:10 +0200)]
Disable Http2_MultipleConnectionsEnabled_InfiniteRequestsCompletelyBlockOneConnection_RemaningRequestsAreHandledByNewConnection (#55593)
Kevin Jones [Tue, 13 Jul 2021 18:37:00 +0000 (14:37 -0400)]
Add leeway to revocation timeout tests.
Pavel Savara [Tue, 13 Jul 2021 18:20:10 +0000 (20:20 +0200)]
[wasm][http] Improve compatibility of abort and cancelation of BrowserHttpHandler (#55084)
* fixed handling of cancelation and abots exceptions to match unit test expectations
added [ActiveIssue("https://github.com/dotnet/runtime/issues/55083", TestPlatforms.Browser)] for redirect outerloop tests
* more
* code review feedback
dotnet-maestro[bot] [Tue, 13 Jul 2021 18:13:22 +0000 (20:13 +0200)]
[main] Update dependencies from 7 repositories (#55565)
* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20210712.2
optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
From Version 1.0.0-prerelease.21361.3 -> To Version 1.0.0-prerelease.21362.2
* Update dependencies from https://github.com/dotnet/arcade build
20210709.3
Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , 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.21357.3 -> To Version 6.0.0-beta.21359.3
* Update dependencies from https://github.com/dotnet/icu build
20210712.1
Microsoft.NETCore.Runtime.ICU.Transport
From Version 6.0.0-preview.7.21328.1 -> To Version 6.0.0-preview.7.21362.1
* Update dependencies from https://github.com/dotnet/llvm-project build
20210712.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.21357.1 -> To Version 11.1.0-alpha.1.21362.1
* Update dependencies from https://github.com/mono/linker build
20210712.3
Microsoft.NET.ILLink.Tasks
From Version 6.0.100-preview.6.21358.3 -> To Version 6.0.100-preview.6.21362.3
* Update dependencies from https://github.com/dotnet/hotreload-utils build
20210712.1
Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
From Version 1.0.1-alpha.0.21361.1 -> To Version 1.0.1-alpha.0.21362.1
* Update dependencies from https://github.com/dotnet/emsdk build
20210713.1
Microsoft.NET.Workload.Emscripten.Manifest-6.0.100
From Version 6.0.0-preview.7.21362.2 -> To Version 6.0.0-preview.7.21363.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Kevin Jones [Tue, 13 Jul 2021 18:01:31 +0000 (14:01 -0400)]
Add one-shot CFB encrypt/decrypt to SymmetricAlgorithm
Adds the CFB versions similar to the already-added ECB and CBC versions.
Co-authored-by: Jeremy Barton <jbarton@microsoft.com>
Dong-Heon Jung [Tue, 13 Jul 2021 18:01:19 +0000 (03:01 +0900)]
Fix Tizen ARMEL Build Failure (#55545)
* Fix Tizen ARMEL Build Failure
* Check with MFD_CLOEXEC instead of ARM_SOFTFP
Steve Harter [Tue, 13 Jul 2021 17:57:48 +0000 (12:57 -0500)]
Remove C# dynamic support from JsonNode (#55430)
Jan Jahoda [Tue, 13 Jul 2021 17:45:59 +0000 (19:45 +0200)]
Delayed client certificate (#54692)
* initial prototype
* Restore TLS 1.2 renegotiation
* First windows functionality merge
* reenable client certificate
* Add more renegotiate tests
* Remove client certificates
* Cleanup
* add test log
* Apply PR comments
* Add Data frame test
* Add drain buffer test
* Fix tls 1.3 incomming app data frame
* Restore verify callback
* Remove debug log
* Remove keylog callback and unused method
* Fix test build
* Attempt to fix openssl version api difference
* Sort shim
* fix build
* CI log
* Restore mac tests
* Add logs
* fix test runs on old openssl
* fix tests
* fix w7 condition
* feedback from review
Co-authored-by: wfurt <tweinfurt@yahoo.com>
Stephen Halter [Tue, 13 Jul 2021 17:26:42 +0000 (10:26 -0700)]
Add ConfigurationManager(#55338)
* ConfigurationManager : IConfigurationRoot, IConfigurationBuilder
Marie Píchová [Tue, 13 Jul 2021 17:18:26 +0000 (19:18 +0200)]
H/3 Server Cert validation callback exception fix (#55526)
* Fix and test.
* MsQuicConnection now call the cert validation callback only once, removed code duplication
Eirik Tsarpalis [Tue, 13 Jul 2021 16:57:45 +0000 (19:57 +0300)]
Add AttributeTargets.Interface to JsonConverterAttribute (#54922)
* Allow JsonConverterAttribute usage on interfaces.
Fix #33112
* update ApiCompat baseline
Natalia Kondratyeva [Tue, 13 Jul 2021 16:49:47 +0000 (18:49 +0200)]
QUIC read pipeline changes (#55505)
This brings changes to read states and behavior done initially in #52929 with my fixes to it to make all tests work
SingleAccretion [Tue, 13 Jul 2021 16:39:21 +0000 (19:39 +0300)]
Import `cgt.un(op, 0)` as `NE(op, 0)` (#54539)
* Some minor code modernization
Use "genActualType" directly as it is now a templated method.
Don't create casts to TYP_ULONG - they are identical to casts
to TYP_LONG. TYP_ULONG is only relevant for checked casts.
Add a TODO on addressing the duplicated logic that upcasts to
native int from int32 on 64 bit.
Use modern comments.
Zero diffs.
* Normalize GT_UN(op, 0) early in importer
Normalizing this idiom helps downstream optimizations.
* Solve most of the regressions
In morph, when narrowing the AND operand, only
insert casts if necessary - prefer to use "optNarrowTree".
Otherwise we end up with redundant register shuffling.
Buyaa Namnan [Tue, 13 Jul 2021 16:34:34 +0000 (09:34 -0700)]
Expose nullability info (#54985)
* Expose nullability info from Reflection
Stephen Toub [Tue, 13 Jul 2021 16:05:31 +0000 (12:05 -0400)]
Augment tests for FileMode.Append (#55513)
To validate that seeking and writing are valid in the region of the file since its initial length.
Tarek Mahmoud Sayed [Tue, 13 Jul 2021 16:00:40 +0000 (09:00 -0700)]
Rename TextMapPropagator to DistributedContextPropagator (#55539)
Koundinya Veluri [Tue, 13 Jul 2021 15:59:20 +0000 (08:59 -0700)]
Update spin-wait pause/yield normalization (#55295)
Update spin-wait pause/yield normalization
- Modified the measurement to use much less time and to remeasure periodically to reduce CPU usage during startup
- Each measurement does a low-microsecond-level measurement of pause/yield times
- Some small amount of history of recent measurements is retained and used to for now take the lowest measurement for normalization
- Measurements are done lazily, and at most every few seconds another measurement is taken
- Added a profiling event that includes info about a measurement and the established value from recent measurements that is used for normalization
Alexander Köplinger [Tue, 13 Jul 2021 15:12:28 +0000 (17:12 +0200)]
Improve resolving runtime pack in WasmApp targets (#55258)
Use similar logic to `eng/targetingpacks.targets` in `WasmApp.InTree.targets` and `WasmApp.LocalBuild.targets`.
Also set `UseMonoRuntime=true` to make sure we get the Mono-based runtime pack.
SingleAccretion [Tue, 13 Jul 2021 15:10:39 +0000 (18:10 +0300)]
Do not eliminate casts from FP types (#53667)
An optimization in morph was deleting casts
on the RHS of a narrow store if the cast-to-type
was wider than the type being stored. This is only
valid for casts from integral types, as the backend
does not handle "STOREIND(byte*, double)", nor is there
an instruction to go from an XMM register to a narrow
memory location on x86/x64.
The issue is not reproducible right now because
fgMorphCast wraps the casts in question, but it is
an invalid IR transformation nonetheless, and similar
code in fgMorphSmpOpOptional guards against non-integral sources.
Dzmitry Konanka [Tue, 13 Jul 2021 15:02:43 +0000 (18:02 +0300)]
optimize adding unwind info entries by hashtable (#55398)
Stephen Toub [Mon, 12 Jul 2021 10:30:34 +0000 (06:30 -0400)]
Use interpolated strings in more places
Stephen Toub [Sat, 10 Jul 2021 14:09:23 +0000 (10:09 -0400)]
Fix LangVersion on several test projects
Stephen Toub [Fri, 18 Jun 2021 21:57:11 +0000 (17:57 -0400)]
Add Debug.Assert/Write{Line}If interpolated overloads
Stephen Toub [Wed, 26 May 2021 00:41:54 +0000 (20:41 -0400)]
Add Span.TryWrite, StringBuilder.Append, and String.Create interpolated strings support
Hong Li [Tue, 13 Jul 2021 13:44:22 +0000 (06:44 -0700)]
Fix for a couple of Microsoft.XmlSerializer.Generator issues (#55427)
* Fix for a couple of Microsoft.XmlSerializer.Generator issues
* fix the name of the AssemblyInfo.cs file
Tom Deseyn [Tue, 13 Jul 2021 13:43:49 +0000 (15:43 +0200)]
Process.Unix: consider executable permission while searching PATH. (#55504)
Stefan [Tue, 13 Jul 2021 13:27:54 +0000 (15:27 +0200)]
Fix exception (#55324)
Maxim Lipnin [Tue, 13 Jul 2021 13:16:17 +0000 (16:16 +0300)]
Use ReflectionOnly as data contract serializer option for iOS/tvOS/MacCatalyst (#55503)
An attempt to address #47114 by making the System.Runtime.Serialization.DataContractSerializer.Option property return ReflectionOnly value when RuntimeFeature.IsDynamicCodeSupported is true.
Jan Vorlicek [Tue, 13 Jul 2021 13:04:15 +0000 (15:04 +0200)]
Fix UMThunkMarshInfo delete (#55559)
There was a forgotten call to c++ delete that should have been converted
to LoaderHeap::BackoutMem in a code path invoked only if two threads
raced for allocating the UMThunkMarshInfo and the one that lost the race
needed to delete it.
Stephen Toub [Tue, 13 Jul 2021 01:37:58 +0000 (21:37 -0400)]
Fix nullable warning in AssemblyLoadContext30Extensions.cs
Stephen Toub [Mon, 12 Jul 2021 19:18:29 +0000 (15:18 -0400)]
Avoid obscuring failure by ODE thrown from Dispose
Stephen Toub [Mon, 12 Jul 2021 18:32:36 +0000 (14:32 -0400)]
Workaround eventpipe deadlock due to ArrayPool usage
Stephen Toub [Mon, 12 Jul 2021 16:54:46 +0000 (12:54 -0400)]
Temporarily remove string interpolation from NetCoreServer test helper
Stephen Toub [Sat, 10 Jul 2021 13:56:43 +0000 (09:56 -0400)]
Fix async method builder override tests for compiler constraint
Stephen Toub [Fri, 9 Jul 2021 19:25:19 +0000 (15:25 -0400)]
Update pinned C# compiler version
Jeremy Barton [Tue, 13 Jul 2021 08:38:33 +0000 (01:38 -0700)]
Adjust crypto shim for functions renamed for OSSL3 beta1
Jeremy Barton [Tue, 13 Jul 2021 08:37:09 +0000 (01:37 -0700)]
Allow multiple private key references in Unix PFXes
Windows has a complicated state for when a PFX contains two certificates that link to the same private key:
* EphemeralKeySet: The PFX load fails.
* PersistKeySet: Things probably work.
* (normal): "It's complicated".
When the Unix PFX loader was written it was based on the EphemeralKeySet behavior,
because that's what the tests used (to avoid disk penalties and problems).
Trying to maintain a balance between Herculean efforts of bug-for-bug compatibility
and OS variability, this change takes a simpler approach:
* EphemeralKeySet: The PFX load fails, like it will on Windows.
* Otherwise: Let it work (but always with cloned keys, so some of the subtle Windows undesirable states are lost).
SingleAccretion [Tue, 13 Jul 2021 08:35:10 +0000 (11:35 +0300)]
Fix bad folding (#54722)
* Always sign-extend from int32 in gtFoldExprConst
GT_CNS_INT of TYP_INT on 64 hosts has an implicit contract:
the value returned by IconValue() must "fit" into 32 bit
signed integer, i. e. "static_cast<int>(IconValue()) == IconValue()".
gtFoldExprConst was failing to uphold this contract when the target
was 32 bit and the host was 64 bit.
Fix this by always truncating before calling SetIconValue().
* Add a simple test that reproduces bad codegen
Krzysztof Wicher [Tue, 13 Jul 2021 08:05:43 +0000 (10:05 +0200)]
Last set of ILLink annotations related to System.Data.Common (#55507)
* Last set of ILLink annotations related to System.Data.Common
* apply feedback
David Cantú [Tue, 13 Jul 2021 07:50:00 +0000 (00:50 -0700)]
Change server paths to use LOCALHOST (#55523)
Steve Molloy [Tue, 13 Jul 2021 07:27:06 +0000 (00:27 -0700)]
Keep looking up derived chain for Property.Get if it doesn't exist. (#52509)
Steve Molloy [Tue, 13 Jul 2021 07:18:55 +0000 (00:18 -0700)]
Use scopes to resolve array naming issue. (#55451)
* Use scope to avoid using duplicate names for arrays in ILGen serializer.
* Remove comment.
Steve Molloy [Tue, 13 Jul 2021 07:18:13 +0000 (00:18 -0700)]
Handle nullable primitives before passing them to WritePrimitive which expects non-null values. (#54800)
Sergey Andreenko [Tue, 13 Jul 2021 06:18:32 +0000 (23:18 -0700)]
Enreg structs x86 windows. (#55535)
* Mark more cases as DoNotEnreg before CSE.
There are CSE metrics that take into account how many potential enreg locals
do we have.
* enable for x86.