Stephen Toub [Fri, 10 Apr 2020 16:51:48 +0000 (12:51 -0400)]
Remove most [Fact(Skip = "...")] in library tests (#34772)
Miha Zupan [Fri, 10 Apr 2020 16:49:58 +0000 (18:49 +0200)]
Reduce allocations in string.Normalize (#34774)
* Reduce allocations in string.Normalize
* Move stackalloc out of the loop
* Use char* instead of ref char, pin manually
* Mark methods unsafe instead of using unsafe blocks
* Return the original string if unchanged
* Use const for StackallocThreshold
Jacob Lalonde [Fri, 10 Apr 2020 16:41:49 +0000 (12:41 -0400)]
Invalidate FileInfo and DirectoryInfo upon create and delete (#34229)
* Invalidate upon delete and create for fileinfo and directoryinfo
* Add tests, remove directory info test that tested removed behavior
* Add delete test
* Fix typoe in directoryinfo
* Remove new line, and refactor away private method into delete method with paramter
* Change set time tests
* Code review linting as well as test change
* Modify other test that tested prior behavior
* Rework Reset test
* Edits for comments in tests
* Slight method refactor
* Minor test cleanup
Eric StJohn [Fri, 10 Apr 2020 16:32:01 +0000 (09:32 -0700)]
Fix condition for building runtime.native.System.IO.Ports (#34738)
Alexander Köplinger [Fri, 10 Apr 2020 16:16:16 +0000 (18:16 +0200)]
Remove mono/btls directory from source mirror (#34819)
We won't use btls in the netcore mono.
Anirudh Agnihotry [Fri, 10 Apr 2020 15:41:45 +0000 (08:41 -0700)]
use localSystem to start the service (#34802)
Carol Eidt [Fri, 10 Apr 2020 14:56:49 +0000 (07:56 -0700)]
Don't swap base and index if index is float reg (#34771)
* Don't swap base and index if index is float reg
Fix #33363
Layomi Akinrinade [Fri, 10 Apr 2020 14:41:51 +0000 (10:41 -0400)]
Add copy constructor to JsonSerializerOptions (#34725)
* Add copy constructor to JsonSerializerOptions
* Address review comments
* Address review feedback - null check and reflection based test
Vladimir Sadov [Fri, 10 Apr 2020 14:06:54 +0000 (07:06 -0700)]
Removed ENABLE_FAST_GCPOLL_HELPER (#34796)
* Removed ENABLE_FAST_GCPOLL_HELPER
* check trap flag in JIT_PollGC
* JIT_PollGC_Framed
Maxim Lipnin [Fri, 10 Apr 2020 13:26:35 +0000 (16:26 +0300)]
Enable System.Runtime.Serialization.Xml test assembly for Mono on Windows (#34816)
Follow-up to https://github.com/dotnet/runtime/pull/32592#pullrequestreview-
391381885.
Lennart Brüggemann [Fri, 10 Apr 2020 12:35:59 +0000 (14:35 +0200)]
Include key when throwing KeyNotFoundException in indexer (#34759)
* Include key when throwing KeyNotFoundException in indexer
* Add quotes around replacement markers to be consistent with other strings
Maxim Lipnin [Fri, 10 Apr 2020 10:41:57 +0000 (13:41 +0300)]
[mono] Remove CoreFX.issues_windows.rsp file (#32592)
Changes:
- enabled `runtime (Libraries Test Run release mono Windows_NT x64 Debug)` CI lane (Windows Nano Server CI leg is disabled);
- enabled the tests that pass;
- marked failing test assemblies/classes/methods with `ActiveIssue` attribute using respective GH issues;
- removed CoreFX.issues_windows.rsp file and related mono rsp arguments.
Fixes #1980
Zoltan Varga [Fri, 10 Apr 2020 10:17:58 +0000 (06:17 -0400)]
Add beginnings of WebAssembly build support for mono. (#33551)
* Set emcc as the compiler for libraries build
* Add default subsets for webassembly build
* Fix various problems in the build
* Use WebAssembly Docker image
* Use Mono runtime for webassembly builds
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Elinor Fung [Fri, 10 Apr 2020 06:16:41 +0000 (23:16 -0700)]
Remove warning suppression for wrappers no longer marked obsolete (#34792)
monojenkins [Fri, 10 Apr 2020 03:41:55 +0000 (23:41 -0400)]
[wasm][bcl][zoneinfo] Fix local zone info marshaling (#34762)
- Correctly marshal Intl.DateTimeFormat().resolvedOptions().timeZone information
/cc @pranavkm
Thanks for the report and testing Pranav
<!--
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: kjpou1 <kjpou1@users.noreply.github.com>
Anirudh Agnihotry [Fri, 10 Apr 2020 02:41:51 +0000 (19:41 -0700)]
Change policheck words (#34775)
* change policheck words
* Apply suggestions from code review
Co-Authored-By: Eric StJohn <ericstj@microsoft.com>
Co-authored-by: Dan Moseley <danmose@microsoft.com>
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
Santiago Fernandez Madero [Fri, 10 Apr 2020 01:09:26 +0000 (18:09 -0700)]
Add arg aliases for runtimeConfiguration and librariesConfiguration (#34743)
* Add arg aliases for runtimeConfiguration and librariesConfiguration
* Add subset alias
monojenkins [Thu, 9 Apr 2020 21:07:33 +0000 (17:07 -0400)]
[llvm] Fix a crash in JIT mode. (#34766)
Co-authored-by: vargaz <vargaz@users.noreply.github.com>
Ivan Diaz Sanchez [Thu, 9 Apr 2020 20:57:52 +0000 (13:57 -0700)]
Reenable some disabled warnings in CoreCLR (#34659)
* First fixes to print hex without silencing warning 4477.
* After the previous commit, dasm.cpp started showing abnormalities.
* Warning 4302 reenable iteration 1
* Warning 4302 reenable iteration 2
* Warning 4312 reenable: Iteration 1
* Warning 4312 reenable: Iteration 2
* Updated configurecompiler.cmake comments with newly reenabled warnings.
* Fixed a comment.
* Fixed a 32-bit issue with printing formats as well as a scope issue on Linux.
* Warning 4302/4311/4477 reenable: Fixed Checked Builds.
* Warning 4302/4311/4477 iteration 3
* Warning 4477 reenable iteration 4: ToString of bits.
* Fixed an unsigned long long for x86.
* Fixed 4477 on x86 for real this time.
* Changed two bitness checks for size_t usage instead.
Jan Vorlicek [Thu, 9 Apr 2020 19:12:50 +0000 (21:12 +0200)]
Merge pull request #34710 from am11/feature/docs
Add note about building PAL tests in docs
Adeel [Thu, 9 Apr 2020 19:11:35 +0000 (22:11 +0300)]
Add note about building PAL tests in docs
Stephen Toub [Thu, 9 Apr 2020 18:28:14 +0000 (14:28 -0400)]
Add Task.WhenAny(task, task) overload (#34288)
Currently internal and used as an implementation detail under Task.WhenAny(params Task[]) as well as from SemaphoreSlim. Once API reviewed, it can be made public.
Nikola Milosavljevic [Thu, 9 Apr 2020 18:25:18 +0000 (11:25 -0700)]
Merge pull request #34079 from NikolaMilosavljevic/libicu66
Add libicu66 dependency
Egor Chesakov [Thu, 9 Apr 2020 17:58:44 +0000 (10:58 -0700)]
[Arm64] Change uint to Vector64<uint> in Sha1 intrinsics (#34730)
* Change "uint hash_e" to "Vector64<uint> hash_e" since the value must be in a SIMD & FP register in Sha1.cs Sha1.PlatformNotSupported.cs
* Update System.Runtime.Intrinsics.Experimental.cs
* Update hwintrinsiclistarm64.h
* Fix formatting in GenerateTests.csx
* Rename IF_DR_2J -> IF_DV_2U since sha1h operates on SIMD&FP registers in emitarm64.cpp emitfmtsarm64.h instrsarm64.h
* Add Sha256 in GenerateTests.csx
* Add Sha256/
* Add Sha1/
* Add Sha1 in GenerateTests.csx
Aaron Robinson [Thu, 9 Apr 2020 17:05:04 +0000 (10:05 -0700)]
Remove dead COM slot code. (#34702)
Vladimir Sadov [Thu, 9 Apr 2020 16:52:48 +0000 (09:52 -0700)]
include POH in diagnostic APIs like walk_survivors. (#34567)
* include POH in diagnostic APIs like walk_survivors.
* PR feedback
Stephen Toub [Thu, 9 Apr 2020 16:36:10 +0000 (12:36 -0400)]
Optimize newline handling for RegexOptions.Multiline (#34566)
* Optimize newline handling for RegexOptions.Multiline
We previously didn't do any special handling of beginning-of-line anchors (^ when RegexOptions.Multiline is specified). This PR adds special handling for the anchor so that FindFirstChar will jump to the next newline as part of its processing.
As part of this, I also cleaned up some of the anchor handling code. The RegexPrefixAnalyzer only ever returns a single anchor, but the rest of the code was written such that it was expecting multiple anchors.
* Addres PR feedback
Also factor out a few lines of duplication.
Kevin Jones [Thu, 9 Apr 2020 16:23:17 +0000 (12:23 -0400)]
Enable importing PEM-formatted keys into AsymmetricAlgorithm values
Nico Kranz [Thu, 9 Apr 2020 16:13:48 +0000 (16:13 +0000)]
fixed typo @SerializerCycleDetected (#34700)
ReferenceHanlding -> Reference Handling
Stephen Toub [Thu, 9 Apr 2020 15:54:15 +0000 (11:54 -0400)]
Allow Dictionary overwrites during enumeration (#34667)
Anirudh Agnihotry [Thu, 9 Apr 2020 15:06:50 +0000 (08:06 -0700)]
Fixes intellisense for vscode and VS, it also enables testing in Test Explorer (#34721)
* fixes vscode and test explorer
* adding comment
Vladimir Sadov [Thu, 9 Apr 2020 09:34:03 +0000 (02:34 -0700)]
Report POH in ETW events (#34549)
* Report POH in existing events, when fitting.
* GCGenerationRange (descr_generations_to_profiler)
* GCBasicProfiler::GarbageCollectionStarted tolerate gen 4
* More profiler fixes
* BGCOverflow_V1
* GCHeapStats_V1
* PR feedback
monojenkins [Thu, 9 Apr 2020 07:58:26 +0000 (03:58 -0400)]
Wasm debug log level (#34723)
enable_debugging was already an int, with this change log_level
will remain at 1 by default but passing -1 will disable the log
spew
Co-authored-by: lewing <lewing@users.noreply.github.com>
Elinor Fung [Thu, 9 Apr 2020 05:38:27 +0000 (22:38 -0700)]
Remove -Bsymbolic-functions option as -Bsymbolic is already set (#34705)
Santiago Fernandez Madero [Thu, 9 Apr 2020 05:22:37 +0000 (22:22 -0700)]
Add EccSecurityTransforms to credscan suppresions to unblock code-mirror (#34735)
Aaron Robinson [Thu, 9 Apr 2020 03:20:53 +0000 (20:20 -0700)]
Remove Obsolete attribute from some COM related types. (#34692)
Santiago Fernandez Madero [Thu, 9 Apr 2020 03:02:08 +0000 (20:02 -0700)]
Fix installer signing after restore changes (#34707)
Steve Pfister [Thu, 9 Apr 2020 02:04:22 +0000 (22:04 -0400)]
Make sure include is included in Android runtime packs (#34706)
Fixes issue where the check did not include Android
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
Egor Chesakov [Thu, 9 Apr 2020 01:50:28 +0000 (18:50 -0700)]
[Arm64] Simplify logic for RMW hardware intrinsics (#34668)
* Make HW_Flag_NoRMWSemantics Intel-architecture specific and add HW_Flag_HasRMWSemantics on Arm64 in hwintrinsic.h
* Mark RMW intrinsics with the new flag in hwintrinsiclistarm64.h
* setTgtPref should be also enabled under FEATURE_HW_INTRINSICS - to allow preferential targetReg allocation on Arm64 in lsrabuild.cpp
* Redo LinearScan::BuildHWIntrinsic in lsraarm64.cpp
* Use HWIntrinsicInfo::HasRMWSemantics in GenTree::isRMWHWIntrinsic in gentree.cpp
* Remove SpecialCodeGen for ExtractAndNarrowHigh, Decrypt and Encrypt and add RMW specific codegen in hwintrinsiccodegenarm64.cpp hwintrinsiclistarm64.h
Steve MacLean [Thu, 9 Apr 2020 00:09:47 +0000 (20:09 -0400)]
Test build target agnostic separately from target specific tests (#34658)
* Add redundant metadata to simplify filtering
Instead of generic filtering add a manual property
* Filter test build using CLRTestNeedTargetToBuild
* Add targetGeneric and targetSpecific option to build-test.sh/cmd
* Add missing TraitTags
* Update CheckTestBuild expected counts
* Rename per feedback
Adeel Mujahid [Wed, 8 Apr 2020 23:35:41 +0000 (02:35 +0300)]
Fix build on Clear Linux and Android device (#34211)
* Only skip call to check_pie_supported on Android
* Fix native component build for Clear Linux
monojenkins [Wed, 8 Apr 2020 23:22:59 +0000 (19:22 -0400)]
[metadata] Handle MONO_TYPE_FNPTR case in collect_type_images (#34517)
Fixes abort when PTR-FNPTR field signature is encountered.
I do not have a deep understanding of how the code in this area works,
but I have called the function that appears most consistent with how
other signatures are being handled.
Fixes mono/mono#12098
Fixes mono/mono#17113
Fixes mono/mono#19433
Co-authored-by: whydoubt <whydoubt@users.noreply.github.com>
Brian Sullivan [Wed, 8 Apr 2020 21:18:49 +0000 (14:18 -0700)]
Remove obsolete DEBUG only instance variable BasicBlock::bbLoopNum (#34652)
* Remove obsolete DEBUG only instance variable BasicBlock::bbLoopNum
Comment at declaration in block.h
// This is the label a loop gets as part of the second, reachability-based
// loop discovery mechanism. This is apparently only used for debugging.
// We hope we'll eventually just have one loop-discovery mechanism, and this will go away.
INDEBUG(loopNumber bbLoopNum;) // set to 'n' for a loop #n header
* Run jit-format
Elinor Fung [Wed, 8 Apr 2020 21:07:13 +0000 (14:07 -0700)]
Make NativeLibrary Load/TryLoad use ALC extension points for the specified assembly (#34519)
Eirik Tsarpalis [Wed, 8 Apr 2020 20:20:38 +0000 (21:20 +0100)]
[CBOR] Implement Write/ReadEncodedValue() methods (#34650)
* Implement CBOR Write/ReadEncodedValue() methods
* Wrap utf8 encoding and decoding exceptions in ArgumentException and FormatException respectively
* Address feedback
* address feedback
* add contextual tests for WriteEncodedValue
Kevin Jones [Wed, 8 Apr 2020 19:48:11 +0000 (15:48 -0400)]
Support ECParameters that contain only D (macOS).
Also remove the LimitedPrivateKeySupported test conditions, as all platforms support it now.
Santiago Fernandez Madero [Wed, 8 Apr 2020 18:39:25 +0000 (11:39 -0700)]
Update libraries running tests broken link. (#34704)
Swaroop Sridhar [Wed, 8 Apr 2020 18:35:03 +0000 (11:35 -0700)]
Single-File: Process bundles in the framework (#34274)
* Single-File: Process bundles in the framework
This change implements the host changes proposed in the [design](https://github.com/dotnet/designs/blob/master/accepted/2020/single-file/design.md#startup)
The main changes for single-file bundles are:
* Bundle processing code is moved from apphost to hostpolicy
* HostFxr and HostPolicy process deps.json and runtimeconfig.json files directly from the bundle.
* HostPolicy performs verification wrt deps.json based on the contents of the single-file bundle.
* AppContext.BaseDirectory is set as explained [here](https://github.com/dotnet/designs/blob/master/accepted/2020/single-file/design.md#appcontextbasedirectory)
Currently, all files except deps.json and runtimeconfig.json are extracted to disk.
Once the runtime is able to processing assemblies directly from the bundle, they will no longer be extracted.
Notable details:
* The bundle driver (formarly runner.cpp) is divided into two parts:
* bundle::info which describes basic information about the bundle available from the headers only
* bundle::runner which has information about all embedded files, and the ability to drive extraction
This facilitates linking only parts of the bundle handling code with hostfxr, while all code is linked with hostpolicy.
* The AppHost only links with bundle_marker to identify itself as a single-file bundle.
* If the AppHost is a single-file bundle, it notifies hostfxr using the new hostfxr_main_bundle_startup_info() API
* The HostFxr comminucates the single-file-information with HostPolicy using the host_interface_t structure.
Fixes https://github.com/dotnet/runtime/issues/32821
dotnet-maestro[bot] [Wed, 8 Apr 2020 17:34:33 +0000 (17:34 +0000)]
[master] Update dependencies from mono/linker Microsoft/vstest (#34686)
* Update dependencies from https://github.com/mono/linker build
20200407.1
- ILLink.Tasks - 5.0.0-preview.3.20207.1
* Update dependencies from https://github.com/microsoft/vstest build
20200408-01
- Microsoft.NET.Test.Sdk - 16.6.0
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Tomas Weinfurt [Wed, 8 Apr 2020 17:21:02 +0000 (10:21 -0700)]
fix compilation on freebsd (#34671)
* fix compilation on freebsd
* fix test build on freebsd
Brian Sullivan [Wed, 8 Apr 2020 17:00:55 +0000 (10:00 -0700)]
Fix fgValueNumberHWIntrinsic to support encodeResultType for Arity 0 (#34621)
nodes
src/coreclr/src/jit/valuenum.cpp
Aaron Robinson [Wed, 8 Apr 2020 16:07:47 +0000 (09:07 -0700)]
Update documentation for CoreCLR testing. (#34674)
* Update documentation for CoreCLR testing.
monojenkins [Wed, 8 Apr 2020 16:05:09 +0000 (12:05 -0400)]
[runtime] Fix Type.GetTypeCode () for generic enums. (#34670)
Fixes https://github.com/mono/mono/issues/17735.
<!--
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: vargaz <vargaz@users.noreply.github.com>
Marek Safar [Wed, 8 Apr 2020 14:36:45 +0000 (16:36 +0200)]
Unify exclusion of System.IO.Ports.Native build (#34683)
Tomáš Rylek [Wed, 8 Apr 2020 12:59:53 +0000 (14:59 +0200)]
CoreCLR runtime fixes for composite R2R build with shared framework (#34432)
In jithelpers, switch the query over to use a ReadyToRunInfo method
to make it work in composite mode. Also fix two places in
ReadyToRunInfo that were erroneously referring to composite info
(inlining tables).
Thanks
Tomas
Alexander Köplinger [Wed, 8 Apr 2020 12:30:29 +0000 (14:30 +0200)]
Remove upload-unsigned-artifacts-step.yml from mono build-job.yml (#34687)
After https://github.com/dotnet/runtime/pull/34643 there are no .nupkg's produced by the Mono build anymore so that step fails.
Alex Villarreal [Wed, 8 Apr 2020 10:58:54 +0000 (05:58 -0500)]
Enable xunit1024 (#34512)
* Enable analyzer rule xUnit1024
* Remove redundant test in System.Text.Json
The very next method is a Theory with inline data that tests this
exact scenario.
* Rename test methods in System.Text.Json
* Rename test methods in System.ComponentModel.Annotations
* Private methods -> local functions in System.Text.Json
* Rename test methods in System.Collections.Immutable
For RemoveNonExistingTest, just moved the logic from the single-use
helper into the method with the Fact attribute.
* Rename test methods in System.Globalization
* Rename test methods in System.Runtime.Extensions
In Math.cs, removed Round_Decimal_Digits Fact which manually tested
cases included in the MemberData of a Theory with the same name.
* Rename test methods in System.Private.Uri
* Rename test methods in System.Runtime.WindowsRuntime.UI.Xaml
* Rename test methods in System.Security.Cryptography.X509Certificates
* Rename test methods in System.Reflection
* Remove redundant test in System.IO.FileSystem.Watcher
Theory EndInit_ResumesPausedEnableRaisingEvents alredy tests
the same scenario as the removed Fact of the same name.
* Rename test methods in System.IO.FileSystem.Watcher
* Rename test methods in System.Composition.Runtime
* Rename test methods in System.Drawing.Primitives
* Rename test methods in System.Reflection.Emit
* Rename test methods in System.Text.RegularExpressions
* Private methods -> local functions in System.Threading.Tasks.Parallel
* Rename test methods in System.Threading.Tasks.Parallel
* Rename test methods in System.Threading.Tasks
* Simplify tests in System.Threading
* Rename test methods in System.Threading
* Rename test methods in Microsoft.VisualBasic.Core
* Rename test methods in System.DirectoryServices.AccountManagement
* Private methods -> local functions in System.Text.Encoding
* Rename test methods in System.Text.Encoding
* Rename test methods in System.Security.Cryptography.Primitives
* Rename test methods in System.Runtime.Numeric
* Rename test methods in System.CodeDom.Tests
* Rename test methods in System.Reflection.Emit.ILGeneration
* Rename test methods in System.Composition.AttributedModel
* Rename test methods in System.Data.DataSetExtensions
* Rename test methods in System.Runtime
* Rename test methods in System.Runtime.InteropServices
* Remove redundant test in System.ServiceModel.Syndication
* Rename test methods in System.ServiceModel.Syndication
* Rename test methods in System.Data.Common
* Rename test methods in System.Security.Cryptography.Xml
* Private methods -> local functions in System.Security.Cryptography.Xml
* Simplify tests in System.Security.Cryptography.ProtectedData
* Replace private methods with local functions...
In System.Security.Cryptography.Algorithms
* Rename test methods in System.Security.Cryptography.Algorithms
* Simplify tests code in System.Collections.Concurrent
* Rename test methods in System.Drawing.Common
* Rename test methods in System.Data.OleDb
* Rename test methods in System.ComponentModel.TypeConverter
* Rename test methods in System.Web.HttpUtility
* Rename test methods in System.Linq
* Private method -> local function in System.Linq
* Rename test methods in System.Memory
* Rename test methods in System.IO.IsolatedStorage
* Rename test methods in System.DirectoryServices.Protocols
* Rename test methods in System.Globalization.Extensions
* Private methods -> local functions in System.Globalization.Extensions
* Rename test methods in System.IO.Compression
* Rename test methods in System.Security.Cryptography.Encoding
* Rename test methods in Microsoft.Win32.Registry
* Rename test methods in System.IO.UnmanagedMemoryStream
* Rename test methods in System.Collections
* Rename test methods in System.Collections.Specialized
* Rename test methods in System.Private.Xml
* Rename test methods in System.IO.FileSystem
* Rename test methods in System.Diagnostics.StackTrace
* Rename test methods in System.Diagnostics
* Improve some test method renames
* Minor nit fixing
* More improvements to test method names
Alexander Köplinger [Wed, 8 Apr 2020 10:33:08 +0000 (12:33 +0200)]
Fix merge mistake in runtime-official.yml (#34680)
iOS_arm should be disabled but resolving a merge conflict caused a wrong line to be added.
Andrew Au [Wed, 8 Apr 2020 06:35:41 +0000 (23:35 -0700)]
Support 'System.GC.LargePages' in runtimeconfig.json (#34329)
Ryan Lucia [Wed, 8 Apr 2020 05:10:34 +0000 (01:10 -0400)]
[meta] Fix loader printf mistake and outdated info in Makefile (#34602)
Aaron Robinson [Wed, 8 Apr 2020 04:50:05 +0000 (21:50 -0700)]
Clean up GetDelegateForFunctionPointer() code and test paths (#34655)
Update comments for GetDelegateForFunctionPointer() code path
Remove dead code
Update GetDelegateForFunctionPointer() tests in CoreCLR.
Removed duplicate tests that are covered in libraries test suite.
Viktor Hofer [Wed, 8 Apr 2020 01:09:31 +0000 (03:09 +0200)]
Redesign the subset feature (#34663)
* Redesign subset feature and remove subsetcategory
Implement proposal from https://github.com/dotnet/runtime/issues/34403.
Remove subsetcategory and allow all subsets to specified via the -subset
switch.
Alexander Köplinger [Wed, 8 Apr 2020 00:03:39 +0000 (02:03 +0200)]
Remove .pkgproj from Mono (#34643)
They are no longer needed since we have normal runtime packs now.
Jo Shields [Wed, 8 Apr 2020 00:00:28 +0000 (20:00 -0400)]
Initial addition of tvOS Mono (#34475)
Viktor Hofer [Tue, 7 Apr 2020 23:26:53 +0000 (01:26 +0200)]
Rename CoreFx.Private.TestUtilities and reference it in slns (#34656)
* Rename CoreFx.Private.TestUtilities to TestUtilities
* Add TestUtilities reference to slns
David Wrighton [Tue, 7 Apr 2020 21:53:22 +0000 (14:53 -0700)]
Publish crossgen2 as a .zip/tar.gz file (#34623)
- For consumption in dotnet-docker repo
David Wrighton [Tue, 7 Apr 2020 21:49:50 +0000 (14:49 -0700)]
Fix unsupported instruction set handling in crossgen2 (#34605)
- A refactoring during crossgen2 production in the recent pr broke the unsupported instruction set mode for crossgen
Fixes #34628
dotnet-maestro[bot] [Tue, 7 Apr 2020 21:48:26 +0000 (21:48 +0000)]
[master] Update dependencies from 5 repositories (#34275)
* Update dependencies from https://github.com/dotnet/llvm-project build
20200324.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20174.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20174.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20174.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20174.1
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20174.1
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20174.1
* Update dependencies from https://github.com/mono/linker build
20200329.1
- ILLink.Tasks - 5.0.0-preview.3.20179.1
* Update dependencies from https://github.com/microsoft/vstest build
20200330-01
- Microsoft.NET.Test.Sdk - 16.6.0-preview-
20200330-01
* Update dependencies from https://github.com/dotnet/arcade build
20200330.5
- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.20180.5
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.20180.5
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.20180.5
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20180.5
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.20180.5
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.20180.5
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.20180.5
- Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk - 5.0.0-beta.20180.5
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.20180.5
- Microsoft.DotNet.GenAPI - 5.0.0-beta.20180.5
- Microsoft.DotNet.GenFacades - 5.0.0-beta.20180.5
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.20180.5
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.20180.5
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.20180.5
* Update dependencies from https://github.com/mono/linker build
20200331.4
- ILLink.Tasks - 5.0.0-preview.3.20181.4
* Update dependencies from https://github.com/mono/linker build
20200331.6
- ILLink.Tasks - 5.0.0-preview.3.20181.6
* Update dependencies from https://github.com/microsoft/vstest build
20200401-02
- Microsoft.NET.Test.Sdk - 16.6.0
* Update dependencies from https://github.com/dotnet/arcade build
20200401.2
- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.20201.2
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.20201.2
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.20201.2
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20201.2
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.20201.2
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.20201.2
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.20201.2
- Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk - 5.0.0-beta.20201.2
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.20201.2
- Microsoft.DotNet.GenAPI - 5.0.0-beta.20201.2
- Microsoft.DotNet.GenFacades - 5.0.0-beta.20201.2
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.20201.2
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.20201.2
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.20201.2
* Update dependencies from https://github.com/microsoft/vstest build
20200402-01
- Microsoft.NET.Test.Sdk - 16.6.0-preview-
20200402-01
* Update dependencies from https://github.com/mono/linker build
20200402.1
- ILLink.Tasks - 5.0.0-preview.3.20202.1
* Update dependencies from https://github.com/mono/linker build
20200403.2
- ILLink.Tasks - 5.0.0-preview.3.20203.2
* Update dependencies from https://github.com/dotnet/runtime-assets build
20200403.1
- System.Windows.Extensions.TestData - 5.0.0-beta.20203.1
- System.Security.Cryptography.X509Certificates.TestData - 5.0.0-beta.20203.1
- System.Private.Runtime.UnicodeData - 5.0.0-beta.20203.1
- System.Net.TestData - 5.0.0-beta.20203.1
- System.IO.Packaging.TestData - 5.0.0-beta.20203.1
- System.IO.Compression.TestData - 5.0.0-beta.20203.1
- System.Drawing.Common.TestData - 5.0.0-beta.20203.1
- System.ComponentModel.TypeConverter.TestData - 5.0.0-beta.20203.1
* Update dependencies from https://github.com/dotnet/llvm-project build
20200331.1
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20181.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20181.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20181.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20181.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20181.1
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20181.1
* Update dependencies from https://github.com/dotnet/runtime-assets build
20200406.1
- System.Windows.Extensions.TestData - 5.0.0-beta.20206.1
- System.Security.Cryptography.X509Certificates.TestData - 5.0.0-beta.20206.1
- System.Private.Runtime.UnicodeData - 5.0.0-beta.20206.1
- System.Net.TestData - 5.0.0-beta.20206.1
- System.IO.Packaging.TestData - 5.0.0-beta.20206.1
- System.IO.Compression.TestData - 5.0.0-beta.20206.1
- System.Drawing.Common.TestData - 5.0.0-beta.20206.1
- System.ComponentModel.TypeConverter.TestData - 5.0.0-beta.20206.1
* Update dependencies from https://github.com/mono/linker build
20200406.2
- ILLink.Tasks - 5.0.0-preview.3.20206.2
* Update dependencies from https://github.com/dotnet/llvm-project build
20200406.1
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20206.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20206.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20206.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools - 6.0.1-alpha.1.20206.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20206.1
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk - 6.0.1-alpha.1.20206.1
* Update dependencies from https://github.com/microsoft/vstest build
20200406-12
- Microsoft.NET.Test.Sdk - 16.6.0-preview-
20200406-12
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Levi Broderick [Tue, 7 Apr 2020 19:16:24 +0000 (12:16 -0700)]
Fix various LastIndexOf bugs when given zero-length target values (#34616)
- string.LastIndexOf(string.Empty) shouldn't perform -1 adjustment
- MemoryExtensions.LastIndexOf(ROS<char>, string.Empty) shouldn't return 0
- Tighten up some existing unit tests
Eric Erhardt [Tue, 7 Apr 2020 18:57:31 +0000 (13:57 -0500)]
Enable RuntimeIdentifierTests (#34595)
* Enable RuntimeIdentifierTests
Now that we have an updated test host, we can enable the RuntimeInformation.RuntimeIdentifier tests that are disabled.
Fix #26780
* Trim quotes from ID in /etc/os-release
Matt Mitchell [Tue, 7 Apr 2020 17:01:44 +0000 (10:01 -0700)]
Feed cleanup (#34044)
* Feed cleanup
Move away from blob feeds.
* Add dotnet5 feed
* Update version of System.CommandLine.Experimental
* Revert to released versions in SuperILC and R2RDump
* Don't remove public feeds for tests
Stephen Toub [Tue, 7 Apr 2020 14:49:38 +0000 (10:49 -0400)]
Fix ObjectDisposedException in FileSystemWatcher.OSX.cs (#34589)
Synchronize access to disposing the SafeHandle, and clean up some code distributed oddly between the ctor and Start, so as to make more fields readonly and only register for cancellation once everything has started, to avoid race conditions that could otherwise result between cancellation and starting happening concurrently.
Viktor Hofer [Tue, 7 Apr 2020 13:37:19 +0000 (15:37 +0200)]
Restore followup (#34632)
* Remove dead yml file
* Fix installer prepare for publish
Egor Bogatov [Tue, 7 Apr 2020 12:02:48 +0000 (15:02 +0300)]
Use HostArch as a default TargetArchitecture (#34619)
Jan Vorlicek [Tue, 7 Apr 2020 10:21:38 +0000 (12:21 +0200)]
Merge pull request #34468 from janvorli/fix-native-callable-method-hijack
Prevent return address hijacking of NativeCallable method
Vlad Brezae [Tue, 7 Apr 2020 09:56:08 +0000 (12:56 +0300)]
[sgen] Fix coverity issue (#34629)
Jan Vorlicek [Tue, 7 Apr 2020 09:21:48 +0000 (11:21 +0200)]
Add cgroup v2 support to coreclr (#34334)
Upstream cgroup v2 documentation is available at:
https://www.kernel.org/doc/Documentation/cgroup-v2.txt
Some notable differences between cgroup v1 and v2, from a coreclr point
of view, include:
- cgroup v2 has a single hierarchy, so we just look for a single "cgroup2"
entry in /proc/self/mountinfo (without looking for a subsystem match).
- Since cgroup v2 has a single hierarchy, /proc/self/cgroup generally
has a single line "0::/path". There's no need to match subsystems or
hierarchy ids here.
- "memory.limit_in_bytes" is now "memory.max". It can contain the
literal "max" to indicate no limit.
- "memory.usage_in_bytes" is now "memory.current"
- "cpu.cfs_quota_us" and "cpu.cfs_period_us" have been combined into a
single "cpu.max" file with the format "$MAX $PERIOD". The max value
can be a literal "max" to indicate a limit is not active.
It is possible to have both cgroup v1 and v2 enabled on a host (but not
inside a container, AFAIK). In that case, this change will pick one
based on /sys/fs/cgroup.
Fadi Hanna [Tue, 7 Apr 2020 05:19:15 +0000 (22:19 -0700)]
Fix IsBlittable flag bug on types. (#34613)
The issue is that we are automatically assuming that types are blittable until proven otherwise while traversing the list of fields declared on the type. In the case of a type with no fields, we have to also check if the parent type is blittable, before blindly setting the flag to true (Ex: what if the base type has non-blittable fields?)
Jan Kotas [Tue, 7 Apr 2020 04:38:18 +0000 (21:38 -0700)]
Change FrameworkName to .NET (#34615)
Fixes #33680
Jan Kotas [Tue, 7 Apr 2020 04:33:03 +0000 (21:33 -0700)]
Use valid instructions in StubPrecode and NDirectImportPrecode on x64 (#34611)
StubPrecode and NDirectImportPrecode precoded used undefined instruction
encodings on x64 due to copy&paste from x86. Change them to use valid
instructions.
Aaron Robinson [Tue, 7 Apr 2020 04:18:28 +0000 (21:18 -0700)]
Add back support for Delegate field marshaling (#34620)
* Block route trip of function pointer as Delegate field.
Add tests for scenario.
* Update MarshalStructAsParamDLL.cpp
Anirudh Agnihotry [Tue, 7 Apr 2020 04:12:10 +0000 (21:12 -0700)]
moving more tfm dependent properties to targets file (#34532)
* moving more tfm dependent properties to targets file
* correct allconfig build
* shimrefpath -> runtime and indentation
Aaron Robinson [Tue, 7 Apr 2020 04:11:19 +0000 (21:11 -0700)]
Missed feedback. (#34622)
Egor Bogatov [Tue, 7 Apr 2020 01:25:11 +0000 (04:25 +0300)]
[mono] Implement Arm intrinsics: ArmBase, Crc32 (#34240)
* Implement Arm.ArmBase and Arm.Crc32 intrinsics
Marcus Turewicz [Mon, 6 Apr 2020 23:56:54 +0000 (09:56 +1000)]
Adds de/serialization support for JsonDocument (#34537)
* Adds deserialization support for JsonDocument
This change adds support to `System.Text.Json` for deserializing `JsonDocument`.
Specifically, an internal converter `JsonDocumentConverter` is added to the default converter dictionary.
I have created a basic test, but I feel more could be done here, and it may not be in the right file/class - some guidance would be helpful here.
Fixes #1573
* Adds JsonDocumentTests
* Dispose JsonDocument
Aaron Robinson [Mon, 6 Apr 2020 23:48:39 +0000 (16:48 -0700)]
Don't test ANSI any mapping on non en-US locales. (#34599)
Tomáš Rylek [Mon, 6 Apr 2020 22:33:51 +0000 (00:33 +0200)]
SuperIlc fixes to unblock composite build using the shared library (#34430)
monojenkins [Mon, 6 Apr 2020 22:14:07 +0000 (18:14 -0400)]
[llvm] Define a separate symbol for the aot method info for every method. Pass this symbol to the init functions instead of the method index. (#34009)
This removes a dependency the generated code has on the method index, hopefully allowing separate compilation etc. in the future.
<!--
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: vargaz <vargaz@users.noreply.github.com>
Kevin Jones [Mon, 6 Apr 2020 17:31:58 +0000 (13:31 -0400)]
Enable more nullable reference types in asn.xslt.
string and Oid types on Choice can be null.
Reference types that are @optional can be null.
Also, remove #nullable enable, because all projects that include the ASN.1 generate files should already have nullable enable project-wide.
Marcus Turewicz [Mon, 6 Apr 2020 17:27:59 +0000 (03:27 +1000)]
Adds tests for missing object and collection properties in S.T.J.S (#34559)
Elinor Fung [Mon, 6 Apr 2020 17:23:46 +0000 (10:23 -0700)]
Fix missing version info in host binaries (#34520)
Mitchell Hwang [Mon, 6 Apr 2020 16:30:36 +0000 (12:30 -0400)]
Add build configuration to generate runtime packs for Android (#34192)
* [installer] Include Android into installer
* [eng] Provide Android with just Microsoft.NETCore.App.Runtime
* Attempt to make same changes from iOS PR
Co-authored-by: Mitchell Hwang <mihw@microsoft.com>
Marcus Turewicz [Mon, 6 Apr 2020 15:55:19 +0000 (01:55 +1000)]
Fix contructor attributes nullability in S.R.E.CustomAttributeBuilder (#34556)
* Fix contructor attributes nullability in S.R.E.CustomAttributeBuilder
Fixes #819
* Finalise nullable
* Updates ref
Gleb Balykov [Mon, 6 Apr 2020 15:40:10 +0000 (18:40 +0300)]
Fix Linux x86 build (#34548)
* Fix Linux x86 build
Related to #33005
* Fix Linux x86 build
Related to #33653, #33005
* Fix Linux x86 build
Related to #32250
Omair Majid [Tue, 31 Mar 2020 16:06:44 +0000 (12:06 -0400)]
Add cgroup v2 support to coreclr
Upstream cgroup v2 documentation is available at:
https://www.kernel.org/doc/Documentation/cgroup-v2.txt
Some notable differences between cgroup v1 and v2, from a coreclr point
of view, include:
- cgroup v2 has a single hierarchy, so we just look for a single "cgroup2"
entry in /proc/self/mountinfo (without looking for a subsystem match).
- Since cgroup v2 has a single hierarchy, /proc/self/cgroup generally
has a single line "0::/path". There's no need to match subsystems or
hierarchy ids here.
- "memory.limit_in_bytes" is now "memory.max". It can contain the
literal "max" to indicate no limit.
- "memory.usage_in_bytes" is now "memory.current"
- "cpu.cfs_quota_us" and "cpu.cfs_period_us" have been combined into a
single "cpu.max" file with the format "$MAX $PERIOD". The max value
can be a literal "max" to indicate a limit is not active.
It is possible to have both cgroup v1 and v2 enabled on a host (but not
inside a container, AFAIK). In that case, this change will pick one
based on /sys/fs/cgroup.
Prashanth Govindarajan [Mon, 6 Apr 2020 15:22:34 +0000 (08:22 -0700)]
Changed triggered by the StringBuilder analyzer (#34574)
Viktor Hofer [Mon, 6 Apr 2020 13:38:04 +0000 (15:38 +0200)]
Remove entry point helper scripts (#33756)
* Remove entry point helper scripts
The entry point helper scripts were useful during the consolidation of
the repositories. This work is mostly done and the build.cmd/sh script
should be used, going forward.
Jan Vorlicek [Mon, 6 Apr 2020 13:13:27 +0000 (15:13 +0200)]
Fix x86 build break and reflect PR feedback
Viktor Hofer [Mon, 6 Apr 2020 09:54:10 +0000 (11:54 +0200)]
Enable restore for ref and src projects in libs (#33553)
- Use RestoreUseStaticGraphEvaluation which improves no-op restore by 10-15x down to 10-20 seconds.
- .builds msbuild files renamed to .proj as RestoreUseStaticGraphEvaluation throws for non .proj files without an env var set.
- Introducing subsets for libraries and mono and replacing -buildtests switch which was only working for libraries in favor of the subset switch -subset tests which works consistently.
- Fixing the Microsoft.DotNet.CodeAnalysis analyzer which wasn't running and adding missing exclusions.
- Separating restore and build phases in different parts in the repo (ie for installer.tasks) as generated props and targets need to be imported which requires a reevaluation in the build phase.
- Fix eng/docker/build-docker-sdk.ps1 by using the official build entrypoints (cc @alnikola)
- Remove a few depprojs in favor of project restore (faster restore :))
- Fix root code coverage measurement not working correctly
- Traversal support instead of dir.traversal.targets or manual build target defines.
- Introduce a root Build.proj entrypoint which is responsible for building and restoring the repository. This is necessary to enable the new NuGet fast restore which works best and fastest with a single entrypoint.
- Avoid binclashes in libraries and between libraries and installer (netstandard.depproj vs netstandard.csproj)
- Upgrading the SDK to 5.0 latest
- Code cleanup
Fadi Hanna [Mon, 6 Apr 2020 03:04:38 +0000 (20:04 -0700)]
Fix incorrect assumption around the presence of ICF frames in EH codebase for 64-bit targets (#34526)