Michal Strehovský [Mon, 16 Aug 2021 20:49:28 +0000 (05:49 +0900)]
Qualify `sorted_table` allocation with `nothrow` (#57467)
It's clearly what we intended, given the following line.
Viktor Hofer [Mon, 16 Aug 2021 20:18:08 +0000 (22:18 +0200)]
Rename transport packages to follow convention (#57504)
* Rename transport packages to follow convention
As agreed on in https://github.com/dotnet/windowsdesktop/pull/1936, we
want to follow a common schema when naming our transport packages.
Also updating the docs to reflect the name changes and to also
accomodate for the WindowsDesktop transport package.
* Update src.proj
* Update src.proj
Andrii Kurdiumov [Mon, 16 Aug 2021 19:46:26 +0000 (01:46 +0600)]
Generate proper DWARF reg num for ARM32 (#57443)
After introduction of VFP-v3 ARM S0-S31 no longer can be generated using LLVM because numbering of registers to start from 256 and only D0-D31 are used.
So this change encode S0 as D0, S2 as D1, etc. Also use reg nums for DXX registers.
This change fix generation of CFI codes,
which trigger issue with generation of DWARF using LLVM in NativeAOT
See https://developer.arm.com/documentation/ihi0040/c/?lang=en#dwarf-register-names
See https://github.com/dotnet/runtimelab/issues/1388
Larry Ewing [Mon, 16 Aug 2021 18:49:20 +0000 (13:49 -0500)]
Enable System.Linq.Queryable and disable https://github.com/dotnet/runtime/issues/50712 (#57464)
Larry Ewing [Mon, 16 Aug 2021 18:43:18 +0000 (13:43 -0500)]
Mark individual tests for 51211 (#57463)
Adam Sitnik [Mon, 16 Aug 2021 18:12:38 +0000 (20:12 +0200)]
Fix Length for ReadOnlySequence created out of sliced Memory owned by MemoryManager (#57479)
Eirik Tsarpalis [Mon, 16 Aug 2021 16:46:06 +0000 (17:46 +0100)]
Add JsonConverter.Write/ReadAsPropertyName APIs (#57302)
* add JsonConverter.Write/ReadAsPropertyName APIs
* address feedback
Larry Ewing [Mon, 16 Aug 2021 14:31:54 +0000 (09:31 -0500)]
Remove workaround for dotnet/sdk#19482 (#57453)
Anton Firszov [Mon, 16 Aug 2021 13:59:10 +0000 (15:59 +0200)]
Do not drain HttpContentReadStream if the connection is disposed (#57287)
Fixes #56159.
Vlad Brezae [Mon, 16 Aug 2021 13:34:10 +0000 (16:34 +0300)]
[mono] Fix a few corner case overflow operations (#57407)
* [interp] Fix a few overflow conversions
Comparison for overflow was incorrect because for example, (int8)-128.5 = -128, without overflows, even if -128.5 is smaller than the minimum integer. We use instead the float equality comparison between trunc (val) and (int)val.
* [mono][jit] Fix invalid uses of SHL instead of MUL optimization
mono_is_power_of_two is meant to be used only on unsigned numbers. In some cases we pass a signed value instead. This is typically not a problem because negative numbers are not detected as a power of two, except for the special number -
2147483648, which is coded as 0x80000000, therefore a power of two.
* Enable tests
Tomas Weinfurt [Mon, 16 Aug 2021 10:16:07 +0000 (03:16 -0700)]
make use of ports in SPN optional (#57159)
* make port optional in SPN
* fix tests
* feedback from review
* Update src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/AuthenticationHelper.NtAuth.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* fix build
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Marie Píchová [Mon, 16 Aug 2021 09:02:17 +0000 (11:02 +0200)]
Fixed H/3 stress server after the last Kestrel change (#57356)
Sergey Andreenko [Mon, 16 Aug 2021 08:51:16 +0000 (01:51 -0700)]
disable a failing stress test. (#57473)
Theodore Tsirpanis [Mon, 16 Aug 2021 04:34:59 +0000 (07:34 +0300)]
Eliminate temporary byte array allocations in the static constructor of `IPAddress`. (#57397)
dotnet-maestro[bot] [Sun, 15 Aug 2021 21:17:00 +0000 (16:17 -0500)]
Update dependencies from https://github.com/dotnet/emsdk build
20210815.1 (#57447)
Microsoft.NET.Workload.Emscripten.Manifest-6.0.100
From Version 6.0.0-rc.1.21409.2 -> To Version 6.0.0-rc.1.21415.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
dotnet-maestro[bot] [Sun, 15 Aug 2021 21:14:18 +0000 (16:14 -0500)]
[main] Update dependencies from mono/linker (#57344)
* Update dependencies from https://github.com/mono/linker build
20210812.1
Microsoft.NET.ILLink.Tasks
From Version 6.0.100-preview.6.21409.3 -> To Version 6.0.100-preview.6.21412.1
* Update dependencies from https://github.com/mono/linker build
20210813.1
Microsoft.NET.ILLink.Tasks
From Version 6.0.100-preview.6.21409.3 -> To Version 6.0.100-preview.6.21413.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Steve Harter [Sun, 15 Aug 2021 20:30:47 +0000 (15:30 -0500)]
Improve serializer performance (#57327)
Ankit Jain [Sun, 15 Aug 2021 18:10:26 +0000 (14:10 -0400)]
[wasm] Don't use workload for tfm < net6.0 (#56606)
* Bump sdk used for testing to 6.0.100-rc.1.21402.6
* InstallWorkloadFromArtifacts: Add OnlyUpdateManifests parameter
* [wasm] Run Wasm.Build.Tests with sdk/no-workload/+EMSDK
Currently, Wasm.Build.Tests are run in two modes:
1. sdk(`$(SdkVersionForWorkloadTesting)`)+workload installed
2. sdk(from global.json)+EMSDK+LocalBuild targets
this commit changes (2) to:
2. sdk(`$(SdkVersionForWorkloadTesting)`), no workload installed, +
EMSDK+LocalBuild targets
This makes it closer to what a user would actually use.
Also, for the workload tests, this removes `$(WasmNativeWorkload)`
always being set to `true`. The workload should be setting that, and not
the tests.
* Wasm.Build.Tests: Add test for net5.0 blazor projects
* Disable unrelated builds for now
* Revert "Disable unrelated builds for now"
This reverts commit
6fa0efe2ffcfdbcfaba3bdf519a7717809c22672.
* Rename OnlyWasmBuildTests -> TestWasmBuildTests
Adam Sitnik [Sun, 15 Aug 2021 11:32:09 +0000 (13:32 +0200)]
Support long module path (#57335)
* Support long path
* while (true)
* Calculate new length based on array length
* Add a test
* use a smaller value to ensure that at least for DEBUG builds
we test the code path that rents a bigger array from ArrayPool
* add few extra asserts to the test to see why it fails in CI
* Assembly.LoadFile used the way this test is implemented fails on Mono
* don't run the test on Windows 7, for some reason it does not work
* Apply suggestions from code review
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* handle truncated module names, simplify the implementation and dispose tmp modules before throwing exception
* make sure that when the module is not found by the test, the test runner prints available module paths
* Apply suggestions from code review
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* polishing
Co-authored-by: NextTurn <45985406+NextTurn@users.noreply.github.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Viktor Hofer [Sun, 15 Aug 2021 08:48:57 +0000 (10:48 +0200)]
Update source-index-stage1.yml (#57435)
Again apply https://github.com/dotnet/runtime/commit/
c842beb5a94642e7ddd06e262c50f67e297ce986 as the fix was overridden in the latest Arcade update.
Maksym Koshovyi [Sun, 15 Aug 2021 00:57:36 +0000 (03:57 +0300)]
Fix `FileProviders.Physical.GetLastWriteTimeUtc` crash (#57415)
* Update PollingFileChangeToken.cs
* Return min date on fail
Aleksey Kliger (λgeek) [Sat, 14 Aug 2021 23:46:48 +0000 (19:46 -0400)]
[hot_reload] Allow the .ctor token to change for CustomAttribute updates (#57388)
* [hot_reload] Allow the .ctor token to change for CustomAttribute updates.
If the "type" (really .ctor) token is a MemberRef, it won't be literally the
same token value in the update as in the baseline because Roslyn emits
additional MemberRef, TypeRef and AssemblyRef rows instead of trying to reuse
the baseline ones.
We could try to resolve the baseline and delta tokens and check that they map
to the same MonoMethod*, but that is problematic (it may trigger assembly
loading and class initialization) and also unnecessary - without the
ChangeCustomAttribute capability Roslyn will not allow edits that change the
constructor or its arguments. So just drop the extra check.
Fixes https://github.com/dotnet/runtime/issues/57387
* Add testcase
Andrew Au [Sat, 14 Aug 2021 22:52:27 +0000 (15:52 -0700)]
ILCompiler.Reflection.ReadyToRun has to target netstandard2.0 for ILSpy usage (#57416)
Dan Moseley [Sat, 14 Aug 2021 22:25:26 +0000 (16:25 -0600)]
IOException path (#57389)
Radek Doulik [Sat, 14 Aug 2021 20:08:23 +0000 (22:08 +0200)]
[tests] Set the EventSourceSupport feature switch (#57374)
Fixes https://github.com/dotnet/runtime/issues/56847
The `EventSource_ExistsWithCorrectId` test requires the event source
switch be set to true to work correctly after aggressive linking.
dotnet-maestro[bot] [Sat, 14 Aug 2021 18:26:10 +0000 (18:26 +0000)]
[main] Update dependencies from dotnet/arcade dotnet/hotreload-utils dotnet/roslyn-analyzers dotnet/msquic (#57402)
[main] Update dependencies from dotnet/arcade dotnet/hotreload-utils dotnet/roslyn-analyzers dotnet/msquic
dotnet-maestro[bot] [Sat, 14 Aug 2021 18:01:58 +0000 (13:01 -0500)]
[main] Update dependencies from mono/linker (#57203)
* Update dependencies from https://github.com/mono/linker build
20210811.1
Microsoft.NET.ILLink.Tasks
From Version 6.0.100-preview.6.21409.3 -> To Version 6.0.100-preview.6.21411.1
* Update dependencies from https://github.com/mono/linker build
20210811.2
Microsoft.NET.ILLink.Tasks
From Version 6.0.100-preview.6.21409.3 -> To Version 6.0.100-preview.6.21411.2
* Update dependencies from https://github.com/mono/linker build
20210811.3
Microsoft.NET.ILLink.Tasks
From Version 6.0.100-preview.6.21409.3 -> To Version 6.0.100-preview.6.21411.3
* Suppress trimmer warning
* Fix warning code value
* Fix netstandard build of libs
* Revert the code fix and just fix the XML suppression
* Revert project change
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: vitek-karas <vitek.karas@microsoft.com>
Radek Doulik [Sat, 14 Aug 2021 12:15:56 +0000 (14:15 +0200)]
[wasm] Make sure the TargetOS is capitalized (#54927)
Fixes: https://github.com/dotnet/runtime/issues/54926
The $(TargetOS) is used in $(TargetFrameworks) and is case sensitive.
Make sure it is capitalized for Browser, so that build.cmd works when
used like:
./build.cmd -bl -os browser -subset libs
It fixes build errors like:
C:\r\src\libraries\shims\manual\System.forwards.cs(8,88): error CS0234: The type or namespace name 'ZLibException' does not exist in the namespace 'System.IO.Compression' (are you missing an assembly reference?) [C:\r\src\libraries\shims\manual\System.csproj]
C:\r\src\libraries\shims\manual\System.forwards.cs(9,77): error CS0234: The type or namespace name 'CookieVariant' does not exist in the namespace 'System.Net' (are you missing an assembly reference?) [C:\r\src\libraries\shims\manual\System.csproj]
C:\r\src\libraries\shims\manual\System.forwards.cs(10,77): error CS0234: The type or namespace name 'PathList' does not exist in the namespace 'System.Net' (are you missing an assembly reference?) [C:\r\src\libraries\shims\manual\System.csproj]
Jakob Botsch Nielsen [Sat, 14 Aug 2021 09:10:06 +0000 (11:10 +0200)]
Properly account for padding in PUTARG_SPLIT with GT_FIELD_LIST (#57279)
We were writing the stack part to the outgoing stack area by a loop
incrementing the offset by the written size in each iteration. However,
it is possible due to padding and optimization that the written size is
smaller than the delta to the next field. Instead, use the offset of
each field minus the offset of the first stack field to find the offset
in the outgoing arg area.
Fix #57064
Tomáš Rylek [Sat, 14 Aug 2021 07:50:40 +0000 (09:50 +0200)]
Harvest signatures of methods being compiled by the token resolver (#57366)
Fixes: https://github.com/dotnet/runtime/issues/56971
I believe this is the primary fix for the issue; when a type only
ever occurs in method signatures in an assembly, never in the
implementation IL, JIT never calls resolveToken for it and so it
doesn't make it to the module token resolver table.
My investigation revealed additional potential problems in the
product around exported type resolution and the IL linker;
I described them in the issue thread but I believe this to be
both the most appropriate and the safest primary fix.
Thanks
Tomas
Jeremy Barton [Sat, 14 Aug 2021 05:01:22 +0000 (22:01 -0700)]
Avoid finalizer race in the SslStreamNetworkStreamTests cert creation (#57381)
Mitchell Hwang [Sat, 14 Aug 2021 04:54:28 +0000 (00:54 -0400)]
[libraries] Update System.Runtime.Extensions tests for iOS,MacCatalyst,tvOS (#57210)
* [libraries] Update AppDomainTests for iOS,MacCatalyst,tvOS
* Update skip reasons
* Add MacCatalyst to Case Insensitive and remove ActiveIssues
* Replace ActiveIssue with ConditionalTheory based on RemoteExecutor
* Fix test for iOS/tvOS/Catalyst
* Skip UserName test on iOS tvOS
Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Koundinya Veluri [Sat, 14 Aug 2021 04:52:46 +0000 (21:52 -0700)]
Fix thread pool completed work item counter to remove finalized nodes (#57305)
* Fix thread pool completed work item counter to remove finalized nodes
- New nodes are being added to the set but finalized ones were not being removed
- This would result in double-counting the completed work item count for a thread that exits, and memory would grow over time
* Add a separate finalization helper for each node to track thread-local lifetimes
* Remove unnecessary IDisposable
* Fix nullability issues
* Update initialization of thread-local as suggested
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Kevin Jones [Sat, 14 Aug 2021 04:51:34 +0000 (00:51 -0400)]
Add UnsupportedOSPlatform to RC2.Create for Android (#57289)
* Add UnsupportedOSPlatform to RC2.Create for Android
* Add missing resource
* Reuse existing resource string
* Code review feedback
Maryam Ariyan [Sat, 14 Aug 2021 04:49:22 +0000 (00:49 -0400)]
Fix compile issue with escaped characters in logging generator message (#57379)
David Cantú [Sat, 14 Aug 2021 03:02:07 +0000 (20:02 -0700)]
Ignore IOException in PollingFileChangeToken (#57376)
* Ignore IOException in PollingFileChangeToken
* Don't use local method since FileStatus is a struct
* errno needs to be saved before calling InvalidateCaches
Stephen Toub [Sat, 14 Aug 2021 02:48:00 +0000 (22:48 -0400)]
Improve AppendLiteral for short literals (#57217)
* Improve AppendLiteral for short literals
DefaultInterpolatedStringHandler.AppendLiteral is special, in that the 99.9% use case is it's called as part of string interpolation by compiler-generated code where the argument is always a literal. That means when the method is inlined, the JIT can specialize the implementation based on knowing the literal's Length is a constant. Which means we can provide specialized implementations for common lengths, resulting in faster and smaller code. This does so for strings of length 1 and 2, as they're quite common in code bases examined, and it does so for both the default handler and also the handler used to format into a span.
The exact same code as before gets generated by the JIT for literals of length > 2. The main downside here is if someone does manually call this CompilerServices method with a variable, the call site will end up bloated with the special cases.
* Address PR feedback
* Disable some CodeDom tests on mono interpreter
Kunal Pathak [Sat, 14 Aug 2021 00:54:23 +0000 (17:54 -0700)]
imul instruction size misprediction (#57179)
* Add assert
* Remove the assert in emitInsSizeCV
* Add a check for includeRexPrefixSize
* Remove the codeSize() capping code added to fix #12840
* Make immediate only 4bytes long for non-mov instructions
* Delete a commented code
Stephen Toub [Fri, 13 Aug 2021 22:58:55 +0000 (18:58 -0400)]
Add Capture.ValueSpan (#57357)
Anirudh Agnihotry [Fri, 13 Aug 2021 22:28:03 +0000 (15:28 -0700)]
Fix Build Failures if there are no packages produced in the release branch (#57311)
* no packages
* Update eng/pipelines/libraries/build-job.yml
Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
* change parameter name and add main condition to running of tests
* remove package testing condition as we no longer run package testing on helix
* Update eng/pipelines/libraries/build-job.yml
Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
* Update upload-intermediate-artifacts-step.yml
Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
Anirudh Agnihotry [Fri, 13 Aug 2021 22:27:39 +0000 (15:27 -0700)]
remove non -required package downloads and package reference (#57367)
Kunal Pathak [Fri, 13 Aug 2021 21:42:20 +0000 (14:42 -0700)]
fix no_progress attribute (#57377)
Jakob Botsch Nielsen [Fri, 13 Aug 2021 21:35:39 +0000 (23:35 +0200)]
Fix swapping evaluation order in assignments with CSE defs (#57364)
In some cases we were swapping the evaluation order of operands in
assignments when there were CSE defs in the subtrees. Change the logic
to properly forego the swapping in this situation.
Fix #57121
Alexander Köplinger [Fri, 13 Aug 2021 21:21:34 +0000 (23:21 +0200)]
Add ILStrip task to trim method bodies (#57359)
This is used for iOS when assemblies are FullAOT compiled since the method body IL is unnecessary there.
John Salem [Fri, 13 Aug 2021 21:07:51 +0000 (14:07 -0700)]
Handle early wakeup of counter loop (#57170)
* Fix #56695
* prevent a negative delta value
* PR feedback + bug fix
* bug fix is preexisting: if a user other than the one who is listening sets the interval to 0 while the counter is enabled, it makes the counter continuously submit values. Changed this so that an interval value of <= 0 results in the counter being disabled
* Add assert after offline conversation
Aleksey Kliger (λgeek) [Fri, 13 Aug 2021 21:02:33 +0000 (17:02 -0400)]
[metadata] Generic params in covariant return checking is ok (#57298)
* [metadata] Generic params in covariant return checking is ok
The issue is that `mono_type_is_reference` does not look at whether a generic
parameter has a constraint that would make it a reference type (there is a big
comment near `mono_type_is_reference` that making it do so would break generic
sharing).
The issue is if you have something like:
```
class BaseClass {}
public class C {
public virtual BaseClass SomeCovariantFunction() => ...
}
public class G<T> : C where T : BaseClass {
public override T SomeCovariantFunction() => ...
}
```
Here when setting up `G<T>` we do a check that the override of
SomeCovariantFunction that returns T is a valid, which boils down to checking
that `T` is ok for a covariant return from `BaseClass`. This is mostly the
same as `BaseClass` is-assignable-from `T`, except we also need to check that
`T` is not a valuetype that implements interface `BaseClass`. That check was
wrong. The fix is to check for `is_valuetype`, not `!is_reference` on `T`.
Fixes https://github.com/dotnet/runtime/issues/49731
* fixup
Kunal Pathak [Fri, 13 Aug 2021 19:08:12 +0000 (12:08 -0700)]
Mark operands of non-RMW as delayFree (#57252)
* For non-RMW intrinsics, always delayfree the operands
* Add test case
* Update test case to add Avx2.IsSupported
James Thomson [Fri, 13 Aug 2021 18:20:56 +0000 (19:20 +0100)]
Fix invoking of `FileSystemWatcher` (#53151)
Call `protected` `On...` event raising methods from `Notify...` methods,
to invoke `SynchronizingObject` when required.
Fix #52644
Tomas Weinfurt [Fri, 13 Aug 2021 17:54:56 +0000 (10:54 -0700)]
improve SNI handling when IP is passed in as DnsEndPoint to QuicListener (#57255)
Mitchell Hwang [Fri, 13 Aug 2021 17:32:33 +0000 (13:32 -0400)]
[libraries] Skip FormKC and FormKD on iOS, tvOS, and MacCatalyst (#57317)
* [libraries] Skip FormKC and FormKD on iOS, tvOS, and MacCatalyst
* Remove associated ActiveIssue
Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
Vlad Brezae [Fri, 13 Aug 2021 16:12:01 +0000 (19:12 +0300)]
[mono][interp] Fixes for compilation of huge methods (#57346)
* [interp] Disable inlining if interpreter var limit is excedeed
Currently, the interpreter has a 64k limit for the stack space to be used by vars. If we reach this limit, retry compilation with inlining disabled, since inlining can increase significantly the method code.
* [interp] Improve cprop speed by removing redundant memclear
Instead of clearing the defs for all vars, clear only for the vars used within a basic block, as the jit does. Otherwise, for large methods with many locals and many bblocks, we end up spending most of the time clearing memory. Improves speed of cprop by 20-30%, while for huge methods it can improve it by orders of magnitude.
Anton Firszov [Fri, 13 Aug 2021 15:40:16 +0000 (17:40 +0200)]
HttpStress: Optimize LogHttpEventListener (#56983)
Eliminate autoflush, blocking calls and Task allocations in LogHttpEventListener, which can go expensive, when logging several thousands of lines per sec.
Zoltan Varga [Fri, 13 Aug 2021 15:36:14 +0000 (11:36 -0400)]
[wasm] Disable native stripping for wasm samples. (#57316)
Anton Firszov [Fri, 13 Aug 2021 14:25:35 +0000 (16:25 +0200)]
WinHttp: Remove [SupportedOSPlatformAttribute] with specific Windows version (#57340)
Egor Chesakov [Fri, 13 Aug 2021 13:48:57 +0000 (06:48 -0700)]
Zero upper 4 bytes of the second operand of Vector3.Dot() in LowerHWIntrinsicDot() on Arm64 (#57328)
Natalia Kondratyeva [Fri, 13 Aug 2021 12:19:46 +0000 (14:19 +0200)]
Quic Abort after Dispose is no-op (#57318)
Allow calling Abort(Read|Write) after disposing. The only safe option to do so is to make them no-op in that case.
Fixes #56683
Viktor Hofer [Fri, 13 Aug 2021 10:26:50 +0000 (12:26 +0200)]
Add missing WindowsDesktop libraries (#57339)
These two libraries are exposed in WindowsDesktop's shared framework but are missing from the transport package.
Adeel Mujahid [Fri, 13 Aug 2021 10:24:30 +0000 (13:24 +0300)]
Add support for function pointers in ilverify (#57163)
* Provide logic verifying access to function pointer.
Extend AccessVerificationHelpers.CanAccess method so that it is
able to handle FunctionPointerType by making sure that a current class
can access all the types returned or accepted by the method pointed
by the given function pointer.
Fix #43502
* Add support for function pointers in ilverify importer
* Add ilverify tests for function pointers
* Trim trailing whitespace
* Use public surface of FunctionPointerType
* Check both return type and arguments of signature
* Delete CanAccessMethodSignature and simplify
* Add a test case for inaccessible return type
Viktor Hofer [Fri, 13 Aug 2021 10:19:27 +0000 (12:19 +0200)]
Add Quic back to aspnetcore transport pack (#57338)
Also make sure that the documentation file is placed next to the
reference assembly if such is included as part of a ProjectReference.
Also move the IsAspNetCore property into packaging.targets as it's not
needed by the binplacing system anymore.
dotnet-maestro[bot] [Fri, 13 Aug 2021 10:17:29 +0000 (12:17 +0200)]
[main] Update dependencies from dnceng/internal/dotnet-optimization dotnet/arcade dotnet/runtime-assets dotnet/hotreload-utils (#57278)
* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20210811.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.21410.2 -> To Version 1.0.0-prerelease.21411.3
* Update dependencies from https://github.com/dotnet/arcade build
20210810.8
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.21406.6 -> To Version 6.0.0-beta.21410.8
* Update dependencies from https://github.com/dotnet/runtime-assets build
20210811.3
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.21405.1 -> To Version 6.0.0-beta.21411.3
* Update dependencies from https://github.com/dotnet/hotreload-utils build
20210811.1
Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
From Version 1.0.2-alpha.0.21404.1 -> To Version 1.0.2-alpha.0.21411.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Juan Hoyos <juan.hoyos@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Marie Píchová [Fri, 13 Aug 2021 08:29:18 +0000 (10:29 +0200)]
updated msquic bits (#57285)
Eirik Tsarpalis [Fri, 13 Aug 2021 08:19:42 +0000 (11:19 +0300)]
Throw NotSupportedException when serializing Date/TimeOnly types (#57273)
* throw NotSupportedException when serializing Date/TimeOnly types
* address feedback
Viktor Hofer [Fri, 13 Aug 2021 08:19:31 +0000 (10:19 +0200)]
Fix source indexer failing official builds (#57336)
Works around https://github.com/dotnet/arcade/issues/7747 to unblock official builds.
This change will revert itself with the next Arcade update.
Viktor Hofer [Fri, 13 Aug 2021 06:17:36 +0000 (08:17 +0200)]
Create WindowsDesktop transport package (#57314)
As we don't include reference assemblies in our packages anymore, we
need a transport package for WindowsDesktop which contains the necessary
reference assemblies. Using the same layout as aspnetcore's package
which worked well in the past.
Adam Sitnik [Fri, 13 Aug 2021 05:47:41 +0000 (07:47 +0200)]
fix IncompleteReadCantSetPositionBeyondEndOfFile test (#57271)
* use ten unique arrays, not the same array 10 times (this should fix the test failure)
* don't run this test for the old FileStream implementation
Charles Stoner [Fri, 13 Aug 2021 04:23:39 +0000 (21:23 -0700)]
Expression.Default and Expression.New with structs with parameterless constructors (#57034)
Santiago Fernandez Madero [Fri, 13 Aug 2021 01:35:49 +0000 (18:35 -0700)]
Add triple slash comments for new System.Drawing API added in 6.0 (#57313)
* Add triple slash comments for new System.Drawing API added in 6.0
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Steve Pfister [Fri, 13 Aug 2021 00:44:35 +0000 (20:44 -0400)]
Disable System.Drawing.Common tests for mobile workloads and skip a few other tests (#57114)
Since the library is PNSE by default, make sure the tests do not run on mobile.
Also skips a few other tests.
Closes #57184
monojenkins [Fri, 13 Aug 2021 00:30:09 +0000 (20:30 -0400)]
[mini] Add GC Unsafe transitions in mono_pmip (#57290)
Add a new mono_pmip_u that doesn't do the transition.
The intent is that Mono developers in the debugger can call still call
mono_pmip_u if the thread state machine is in a broken state.
Co-authored-by: lambdageek <lambdageek@users.noreply.github.com>
Dan Moseley [Thu, 12 Aug 2021 23:49:53 +0000 (17:49 -0600)]
More xml docs (#57039)
* Update Handle docs
* Some easy xmldoc updates
* typo
* typo
* another
* Build breaks with M.IO.R.csproj
* updates
John Salem [Thu, 12 Aug 2021 22:16:12 +0000 (15:16 -0700)]
Turn on disabled tracing tests (#56507)
Kevin Jones [Thu, 12 Aug 2021 22:13:48 +0000 (18:13 -0400)]
Obsolete some System.Security.Cryptography.Pkcs APIs
These members have never worked in .NET/.NET Core
Viktor Hofer [Thu, 12 Aug 2021 22:09:01 +0000 (00:09 +0200)]
Upgrade SDK to 6.0.100-rc.1.21411.13 (#57143)
* Upgrade SDK to 6.0.100-rc.1.21379.2
Both the AzDO and the Core-Eng team believe believe that the issue is on our side and was caused by a thread pool regression. The assumption stands that we need to update to a newer SDK which contains the fix for the thread pool hang.
Pros:
- AzDO and Core-Eng believe that this will mitigate the AzDO feed restore issues.
Cons:
- We will upgrade to an unsigned SDK build. Arcade and other repos already did the same to workaround the issue.
- That SDK build isn’t officially released and won’t until RC 1 ships. This means that developers need to install that build via the nightly channel (from https://github.com/dotnet/installer) if they want to use their globally installed SDK in combination with dotnet/runtime.
- Even though this is a breaking change, we can’t wait for the next monthly infrastructure rollout.
* set StaticWebAssetsEnabled=false
* Remove IsSupported2 since asserting it is true when it might not be
* Try enabling the runtimeconfig generator everywhere
* Revert part of runtimeconfig parser change
* Fix System.Text.Json tests to run with trimming by setting MetadataUpdaterSupport=true.
Work around SDK issue by overwriting EnableUnsafeUTF7Encoding in System.Text.Encoding
* Disable bundling tests on Mac due to bug
See https://github.com/dotnet/runtime/issues/57242
* Make ProcessInfo tests resilient to RuntimeConfig switches on commandline
* Update global.json
Updating to 6.0.100-rc.1.21411.13
* Update to latest SDK.
Remove System.Text.Encoding.Tests workaround
* ignore runtimeconfig switches _if_ they show up
* Remove test which uses `dotnet run, which is SDK-specific
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
Co-authored-by: Andy Gocke <angocke@microsoft.com>
Co-authored-by: John Salem <josalem@microsoft.com>
Co-authored-by: Dan Moseley <danmose@microsoft.com>
Layomi Akinrinade [Thu, 12 Aug 2021 21:29:43 +0000 (14:29 -0700)]
Modify JSON generator to emit code with correct nullability (#57178)
* Modify JSON generator to emit code with correct nullability
* Use T? as arg for property getters/setters
Steve Molloy [Thu, 12 Aug 2021 21:24:44 +0000 (14:24 -0700)]
41431 improve performance and usage of xml serializer namespaces (#56438)
* Allow easier creation of correctly sized dictionaries in scenarios with lots of known namespaces.
* Stop passing internal dictionaries around.
* Reduce enumerations, and immutable-ish improvements.
* PR feedback.
* Use ValueCollection directly instead of IEnumerable<> to avoid virtual calls.
* Update XmlSerializerNamespaces.cs
David Cantú [Thu, 12 Aug 2021 20:51:21 +0000 (13:51 -0700)]
Disable UsePollingFileWatcher_UseActivePolling_HasChanged_SymbolicLink_TargetChanged (#57299)
Mitchell Hwang [Thu, 12 Aug 2021 20:38:59 +0000 (16:38 -0400)]
[iOS][libraries] Throw PNSE for Exportable and PersistKeySet flags iOS (#57153)
* [iOS][libraries] Throw PNSE for Exportable and PersistKeySet flags on iOS
* Fix typo
* Address feedback
* Address feedback
Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
Mitchell Hwang [Thu, 12 Aug 2021 20:15:57 +0000 (16:15 -0400)]
[libraries][iOS][tvOS] Fix case of assembly in ActivatorTests (#57237)
* [libraries][iOS][tvOS] Fix case of assembly in ActivatorTests
* Address test case change feedback
* Remove other activeissue
* Fix spacing
Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
Tanner Gooding [Thu, 12 Aug 2021 20:10:33 +0000 (13:10 -0700)]
Revert "Minor cleanups for System.Runtime.Numerics (#53984)" (#57297)
This reverts commit
65439deaef6a4f7e9184a14ce7170ae1363c89a1.
Marie Píchová [Thu, 12 Aug 2021 18:43:20 +0000 (20:43 +0200)]
Fixed sending FIN flag with the last write. (#57284)
Adam Sitnik [Thu, 12 Aug 2021 18:41:26 +0000 (20:41 +0200)]
Fix .NET 5 FileStream compat detection in the test utility project (#57288)
Viktor Hofer [Thu, 12 Aug 2021 18:37:23 +0000 (20:37 +0200)]
P2P instead of binplacing aspnetcore transport pkg (#57239)
Use ProjectReferences to compose the aspnetcore tranport package.
Avoid binplacing and with that unnecessary copies which overall
simplifies the infrastructure and allows to add additional transport
packages without creating a binplace configuration for each.
This also makes sure that the dependencies are compatible with the
package's tfm.
Juan Hoyos [Thu, 12 Aug 2021 18:09:59 +0000 (11:09 -0700)]
Emit V1 of perfmap files in ShareFramework packages (#57195)
* Add perfmap v1 flag on crossgen2 invocation for SPC
* Sync target and task for CrossGen2 from SDK repo
* Consume new SFX SDK version
Mateo Torres-Ruiz [Thu, 12 Aug 2021 17:53:41 +0000 (10:53 -0700)]
Add arch info in missing framework error (#57150)
* Add arch to missing framework error
* PR feedback
Elinor Fung [Thu, 12 Aug 2021 17:47:58 +0000 (10:47 -0700)]
Remove unnecessary parameters (#57181)
Anirudh Agnihotry [Thu, 12 Aug 2021 17:29:20 +0000 (10:29 -0700)]
calculate the assembly and package version in servicing (#57158)
* automatically update the assembly version
* address feedback
* move IsAspNetCoreApp to packaging.targets
* make assemblyintef pack private, update header and instructions on building the package in servicing
* fixes the allconfig leg
* update the docs
* Update docs/project/library-servicing.md
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Lakshan Fernando [Thu, 12 Aug 2021 15:32:43 +0000 (08:32 -0700)]
Adding warnings to make generic and static ctor (#56628)
* Adding warnings to make generic and static ctor
* build break fixes
* build break2
* build break3
* Suppressing DispatchProxy warnings since they are safe
* FB
* FB
* typos
Natalia Kondratyeva [Thu, 12 Aug 2021 15:05:58 +0000 (17:05 +0200)]
Fix QPACK status decode (#57236)
Fix "Literal Header Field With Name Reference" parsing for Status code. Add tests for QPACK-ed and not QPACK-ed status receiving for all status codes (except informational).
Fix QPackStaticTable.HeaderLookup to comply with spec (the order was off, so lookup didn't work correctly in some cases).
Fixes #55988
Juan Hoyos [Thu, 12 Aug 2021 14:52:51 +0000 (07:52 -0700)]
Consume MSI manifest shortname feature in workloads (#57270)
Dan Moseley [Thu, 12 Aug 2021 14:46:01 +0000 (08:46 -0600)]
Remove unnecessary Sun license (#57258)
Tomáš Rylek [Thu, 12 Aug 2021 13:54:17 +0000 (15:54 +0200)]
Add support for building just a subset of runtime tests (#57142)
This change adds four new options to the runtime test build command:
1) test <test project path relative to src\tests> - build just that
one test.
2) dir <directory relative to src\tests> - build all tests in the
directory.
3) tree <directory relative to src\tests> - build all tests in the
given subtree.
4) all - use clean rebuild (i.e. don't apply incrementalism)
when building the tests.
Thanks
Tomas
Adam Sitnik [Thu, 12 Aug 2021 11:19:48 +0000 (13:19 +0200)]
update Windows ARM build requirements (#57275)
* update Windows ARM build requirements
* Apply suggestions from code review
Co-authored-by: SingleAccretion <62474226+SingleAccretion@users.noreply.github.com>
Mansoor Saqib [Thu, 12 Aug 2021 10:32:33 +0000 (03:32 -0700)]
Add build check for System.Private.CoreLib.pdb before including it (#57161)
- Fixes build failure with /p:DebugType=embedded (#56998)
- Author of fix: @danmoseley
Jakob Botsch Nielsen [Thu, 12 Aug 2021 09:09:16 +0000 (11:09 +0200)]
Fix fgRemoveUnreachableBlocks to detect all changes (#57199)
When 'removing' a BBF_DONT_REMOVE block we change it to BBJ_THROW. After
this it is possible that other blocks become unreachable, so we should
keep looking for such blocks.
In #57061 that manifested in a case where the unreachable block did not
have SSA built for it, but downstream the compiler was relying on SSA
being built.
Fix #57061
Marie Píchová [Thu, 12 Aug 2021 08:35:18 +0000 (10:35 +0200)]
[HTTP/3] Flush sends buffered data (#57234)
HTTP/3 write stream will send buffered headers if flush is called.
Fixes #56969
Vlad Brezae [Thu, 12 Aug 2021 08:22:41 +0000 (11:22 +0300)]
[mono][jit] Fix clearing of LastError (#57127)
* [mono][jit] Fix clearing of LastError
The clearing was added as part of CEE_CALL and CEE_CALLVIRT opcodes instead of CEE_CALLI which is actually used for pinvoke calls.
* Disable test
We can't enable this test on wasm due to dynamic library lookup limitation
On android we seem to have some sort of issue with the runtime tests causing the pinvokes failing to be resolved
Geoff Kizer [Thu, 12 Aug 2021 05:58:49 +0000 (22:58 -0700)]
fix IPAddress equality comparison (#57250)
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Andrii Kurdiumov [Thu, 12 Aug 2021 04:02:13 +0000 (10:02 +0600)]
Do not perform relative code reloc on ARM in AOT (#57257)
Fixes https://github.com/dotnet/runtimelab/issues/1388
Kevin Jones [Thu, 12 Aug 2021 03:35:05 +0000 (23:35 -0400)]
Obsolete Rfc2898DeriveBytes.CryptDeriveKey (#57002)
* Obsolete Rfc2898DeriveBytes.CryptDeriveKey
* Apply suggestions from code review
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
Takym (たかやま) [Thu, 12 Aug 2021 03:33:25 +0000 (12:33 +0900)]
`BigInteger`: made properties simple format. (#56821)