Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/runtime.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-05-23Fix native sourcelink support (#69598)Juan Hoyos
* Fix native sourcelink support * Correctly case Sdk.Targets Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
2022-03-17Surface native sourcelink on CoreCLR native PDBs for easier dump debugging ↵Juan Hoyos
(#66677) * Use managed sourcelink infrastructure to allow for win native sourcelink
2022-03-04Run trim analyzer (#65870)Sven Boemer
* Use SDK logic for IsTrimmable * Address some analyzer warnings * Disable analyzer when baseline suppressions exist * Don't mark unannotated test project as trimmable * Add nativeaot annotations * Add suppression in windows-only code * Import illink.targets only when trimming mobile tests * Don't run analyzer on unannotated windows OOBs * PR feedback Use pragma instead of UnconditionalSuppressMessage
2022-02-24sfx+oob split, shim project refactoring, P2PsViktor Hofer
Split the build of shared framework and out-of-band projects so that it's possible to just build the shard framework projects, which was requested by the CLR teams. In the next infrastructure rollout, the current "libs.ref+libs.src" subsets should be removed. Generate the targeting pack with an incomplete (without shims) frameworklist as part of the "libs.sfx" subset. Build the shim projects after the shared framework and oob projects and re-generate the targeting pack's frameworklist to include the shims. Refactor the shims so that they aren't grouped anymore by generated & manual. Instead group them by "ref" and "src" same as other libraries in the tree which allows to reference the source project shims and read from the ReferenceAssembly metadata. Use ProjectReferences in traversal projects and shim projects instead of named references that point to binplace directories (see graph below) This allows to build parts of the product dynamically, i.e. the shim projects, apicompat.proj, sfx.proj and oob.proj.
2022-02-17Avoid additional AssemblyInfo output file (#65465)Viktor Hofer
Avoid the additional AssemblyInfo file which is placed under "$(IntermediateOutputPath)_AssemblyInfo.cs/vb" and remove the "_WriteNonStringAssemblyInfoAttributes" target that isn't necessary anymore now that msbuild supports specifying assembly attributes with non string types. https://github.com/dotnet/msbuild/commit/c4cda20d0720ba3d467df7ef487b63f79eb848a0
2022-02-12Don't use Targets* helper properties in libs (#64500)Viktor Hofer
* Don't use Targets* helper properties in libs projs This change makes it possible to migrate 200+ (ref+src) projects to use TargetFramework instead of TargetFrameworks which avoids the additional outer build evaluation and invocation which ultimately makes the overall build faster. Targets* properties (i.e. TargetsWindows, TargetsAnyOS, TargetsUnix, etc.) rely on the TargetFramework property which usually are set inside a project. The TargetFramework property is only available before a project specifies it if it's explicitly set in a props file or if the project is cross-targeting and the outer-build dispatches into the inner-build. During the dispatch, the TargetFramework property is passed in as a global property. Until now that behavior wasn't a problem because every libraries project cross-targeted (by setting the TargetFrameworks property) even though many only include a single TargetFramework (i.e. NetCoreAppCurrent). To allow projects to use the TargetFramework property instead of TargetFrameworks, the Targets* helper properties can't be calculated anymore early in a props file as the TargetFramework property isn't set at that time. In general, the guidance by the SDK/msbuild team is to not read from the TargetFramework property before the project sets it (in a property group). That effectively means that the TargetFramework property shouldn't be used in props files at all. Therefore these helper properties can't be used anymore for property conditions and I'm replacing their usage with TargetPlatformIdentifier comparisons for both properties and items. In nearly all cases, the Targets* helper properties can be replaced with TargetPlatformIdentifier checks on items and in the few cases where TargetsUnix or TargetsLinux marks multiple tfms as compatible, the exact tfms must be used instead for the TargetPlatformIdentifier comparison. Whenever a project needs to condition properties on the platform, I'm first setting the TargetPlatformIdentifier the same way the SDK sets it so that the SDK later doesn't need to set it again to avoid the additional expensive msbuild function call. * Use TargetFramework singular to avoid outer builds Use TargetFramework instead of TargetFrameworks property whenever a projects only targets a single target framework. This avoid unnecessary outer builds and evaluations and makes the build faster.
2021-06-08Add PlatformNeutralAssembly property for targeted builds of cross platform ↵Buyaa Namnan
assembly (#53626)
2021-04-20Refactor build to use SupportedOSPlatforms instead of IsWindowsSpecific (#51450)Jeff Handley
2021-04-15Don't call into unsupported APIs on build targets which don't support quic ↵Marek Safar
(#49261) * Don't call into unsupported APIs on build targets which don't support quic The code could be extracted to HttpConnectionPool.quick.cs but not sure it's worth the split as that would move the majority of the code. Fixes #49201 Fixes #49187 * if-def less version * Quic IsSupported working and not throwing for AnyOS. * Fix for running the newly added UnitTest. * Add missing unsupported targets * Reverted Quic changes. * Unsupported to Supported * Guarded unsupported calls with OperationgSystem.Is...() * Addressed comments. * Analyzer fixed, macOS fixed. * Trimming test. * Removed test. * Guard more unsupported platform calls * Some more analyzer attributes. * Fix for Android, which returns true for IsLinux(). * Skip failing trimming test on wasm * Removed additional UnsupportedOS attributes, referenced issue. Co-authored-by: Marie Píchová <mapichov@microsoft.com>
2021-04-05Update ref assemblies libraries unsupported on mobile (#50616)Marek Safar
* Update ref assemblies libraries unsupported on mobile * Add tvOS to known platforms list
2021-03-31Resolve unknown platform name warnings (#50193)Buyaa Namnan
* Add targets as supported platforms * Update analyzer version * Update comment, remove '' != 'false' condition
2021-03-25Include the iOS, Android, and macCatalyst supported platforms (#50143)Jeff Handley
2021-03-18Annotate System.Diagnostics.Process APIs throwing PNSE on iOS/tvOS (#49354)Maxim Lipnin
* Process.Start * Remove redundant annotations * Remove iOS since it's in the default list of supported platforms * Process.Kill * Make Process.Kill throw PNSE on iOS/tvOS * Annotate windows-related implementation of Kill method
2021-02-26Refactor how we generate some assembly attributes. (#48766)Eric StJohn
2021-02-19Annotate framework assemblies as trimmable (#48428)Sven Boemer
* Annotate framework assemblies as trimmable This will opt them into trimming with the behavior described at https://github.com/mono/linker/blob/main/docs/design/trimmed-assemblies.md#assemblymetadataistrimmable-true. * Add a condition to let projects opt out A project just needs to set <SetIsTrimmable>false</SetIsTrimmable>, and it won't get the trimmable metadata. I also got rid of the SkipFrameworkAssemblyMetadata check since I don't think the IsTrimmable metadata should be tied to whether we are building a framework assembly, and this property was unused as far as I could tell.
2021-02-04 Update the analyzer version in runtime and enable the TFM attributes on ↵Buyaa
browser build (#47789) * Remove logic for removing TFM target supported attributes for browser build, use latest analyzer
2020-12-28Avoid deferred Arcade importing (#46397)Viktor Hofer
* General cleanup and mono import Arcade in root * More cleanup and coreclr import Arcade root * Import Arcade root from libraries * Set informationversion for corelib * BuildArchitecture cleanup * Fix property name * Fix default target invocation of runtime.proj * specify tfm correctly * Remove unnecessary TestStrongNameKeyId * Revert TestStrongNameKeyId removal * Fix entrypoint target by using M.B.NoTargets * Fix reference assembly paths * PR feedback * Set Platform correctly * PR feedback and more cleanup * Move BaselineMicrosoftNetCoreAppPackageVersion * Fix reference to CoreLib * Fix OS calculation * Fix targets importing * Remove *TargetOS * Add RuntimeConfiguration doc * Change conditions in root msbuild files * installer test fixes * Cleanup * More cleanup because of well defined entrypoint * Don't import D.B.* from installer tests at all * Rename fix * Include explicit reference to mscorlib in ilproj * Update eng/restore/docs.targets Co-authored-by: Jan Kotas <jkotas@microsoft.com> * Revert some installer test changes * Installer test fix again * Disable EOL tfm check for installer tests * Set platform later for installer Co-authored-by: Jan Kotas <jkotas@microsoft.com>
2020-12-15Make EventLog work without .NETFramework (#45884)Eric StJohn
* Make EventLog work without .NETFramework * Use a project file instead of targets to create message DLL * Add EventLogMessagesTests * Address feedback * Exclude EventLogMessage tests on net48 * Apply code review feedback Also fix one test which would fail on machine without .NETFramework. * Fix HelpLink test
2020-12-15Enable Supported attributes from sdk for non browser build, fix related ↵Buyaa
warnings (#45504)
2020-11-26Handle unsupported browser warnings (#43363)Buyaa
* Handle browser warnings * Apply feedback, revert updates handled with different PRs * Add misssing diagnotic id * Address multitargeted warnings * Apply feedback * Small type/comment updates * Apply more feedback * Use project settings instead adding Directory.Build.props * Annotate APIs injecting unsupported type through DI * Fix window support related warnings found with generic type parameter * Fix another browser warning found with generic type parameter bug fix * All public APIs of ConsoleLoggerExtensions are unsupported, so marking entire type as unsupported on browser * Try handle mono warnings * Revert mono related changes, it was mistake * Try handle browser warninga in mono * Apply feedback and fix new warnings caused from corelib changes * Review update * Apply feedback * Move platform specific section from HttpTelemetry * Revering unwanted changes * Remove redundant attributes * Exclude cross platform build with browser target * small updates * Annotate entire type DiagnosticCounter unsupported * Apply feedback, improve suppression comments * Remove Unsupported browser from TypeDescriptor.CreateInstance, TypeDescriptionProvider.CreateInstance and related updates
2020-11-06Use targetPlatformMoniker for net5.0 and newer tfms (#43965)Anirudh Agnihotry
* Use targetPlatformMoniker for net5.0 and newer tfms * disabling analyzer, update version to 0.0, and use new format. * update the targetFramework.sdk * removing supportedOS assembly level attribute * fix linker errors and addressing feedback * making _TargetFrameworkWithoutPlatform as private
2020-10-17Fix new warnings (#43097)Buyaa
* Fix CA1416 warnings in runtime repo
2020-08-13[browser] Mark APIs as unsupported on browser (#40612)Maxim Lipnin
* Mark System.Security.Cryptography.OpenSsl as unsupported on browser * Mark other System.Security.Cryptography APIs as unsupported on browser * Mark System.Data.Odbc.* as unsupported on browser * Mark System.DirectoryServices.Protocols APIs as unsupported on browser * Mark System.Drawing.Common APIs as unsupported on browser * Mark System.IO.Ports as unsupported on browser
2020-08-05Mark System.Security.Cryptography.OpenSsl as unsupported on Windows, fixes ↵Adam Sitnik
#40101 (#40377)
2020-08-05Mark existing Windows-specific APIs without a version number, fixes #40095 ↵Adam Sitnik
(#40375)
2020-08-05Rename MinimumOSPlatformAttribute and RemovedInOSPlatformAttribute (#40371)Adam Sitnik
* rename attributes: * MinimumOSPlatformAttribute -> SupportedOSPlatformAttribute * RemovedInOSPlatformAttribute -> UnsupportedOSPlatformAttribute * update src and ref files * update .targets file * update comment ;)
2020-07-17mark Windows-specific APIs as such (#39265)Adam Sitnik
* move all OSPlatformAttributes to a single file so they can be easily referenced in < .NET 5 libraries * Adds System.Runtime.Versioning*Platform* annotation attributes to < .NET 5 builds * introduce MinimiumSupportedWindowsPlatform * introduce IsWindowsSpecific setting that adds MinimumOSPlatform attribute for Windows Specific libraries * mark all Windows-specific libraries as such * annotate Windows-specific System.Console methods and properites * annotate Windows-specific DpapiProtectedConfigurationProvider type * annotate throwing Windows-specific APIs from System.Diagnostics.Process namespace * annotate throwing Windows-specific APIs from System.IO.MemoryMappedFiles namespace * annotate Windows-specific APIs from System.IO.Pipes namespace * the new attributes should support enums * annotate Windows-specific APIs from HttpListenerTimeoutManager class * annotate Windows-specific APIs from System.Net.Sockets namespace * annotate Windows-specific APIs from System.Runtime.InteropServices namespace * annotate Windows-specific APIs from System.Security.Cryptography.Csp namespace * annotate Windows-specific APIs from System.Security.Cryptography.X509Certificates namespace * annotate Windows-specific APIs from System.Threading namespace * address code review feedback: dont introduce new constants, reuse existing SYSTEM_PRIVATE_CORELIB * code review: import the namespace, simplify the attribute name * add missing Socket.DuplicateAndClose and Socket(SocketInformation) * fix the test name (it does not throw) * add missing DriveInfo.set_VolumeLabel * add System.IO.FileSystem File Encrypt and Descrypt methods * simplify the < .NET 5 check * enable nullable in explicit way as it's not enabled in all the projects where this file is included * include platform attributes in projects that ask for it in explicit way * set IncludePlatformAttributes to true for projects that include files from other projects * use suggestions from Viktor and Santi Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
2020-07-14Add NeutralResourcesLanguageAttribute to corefx libraries (#39135)Tarek Mahmoud Sayed
2020-05-04Enable dotnet test in libraries (#35285)Viktor Hofer
* Enable dotnet test * Update docs * Use vstest in F5 scenarios * Make dotnet test without framework switch work * Code cleanup * Only run code coverage conditionally * Fix F5 condition for netcoreapp * Downgrade sdk to check for helix submission failures * Fix wrong conditions * Add blame data collector
2020-05-02Fix CoreCLR incremental builds (#35732)Jan Kotas
2020-04-25CoreCLR versions cleanup (#35327)Jan Kotas
- Use current version numbers everywhere - Use product version (e.g. 5.0.0) for all user facing versions - Use file version (e.g. 5.0.20.21010) only when the exact version information is required - Reduce number of layers of version macro definitions
2020-03-28.NET Core to .NET branding changes (#33694)Jan Kotas
Contributes to #33680
2020-03-15Fixing the sourcelink failure for embeded files (#33521)Anirudh Agnihotry
* fixing sourcelink * enable sourcelink on official build * addressing feedback * removing extra space * reverting eng common change * adding comment * moving comment to correct place * not embedding files for test assemblies
2019-11-09Cleanup MSBuild conditional operators to be all in lowercase ↵Santiago Fernandez Madero
(dotnet/corefx#42491) Commit migrated from https://github.com/dotnet/corefx/commit/ab01852685e659a685af2ace33af5b3cefdf8430
2019-10-29Prepare corefx for repo consolidation (dotnet/corefx#42175)Viktor Hofer
* Prepare corefx for repo consolidation into runtime Commit migrated from https://github.com/dotnet/corefx/commit/e160dd972d958fbe9594dc1001da4d1b94bba949
2019-03-03Project msbuild syntax cleanup (dotnet/corefx#35686)Viktor Hofer
* Remove license header from non-shipping files * Remove obsolete Project attributes * Remove xml header and remove DefaultTargets Commit migrated from https://github.com/dotnet/corefx/commit/c390ce7df50252e11f5d322276e9d19e046d1332
2019-02-22Use the .NET Core product version for informational version description ↵Jan Kotas
(dotnet/corefx#35436) * Use the .NET Core product version for informational version description The 4.X.Y.Z versions that we use for file and assembly versions are confusing. We can make the situation better by including the official .NET Core version in the informational assembly version description at least. * Move ProductVersion to Versions.props * Move Packaging.props to later Commit migrated from https://github.com/dotnet/corefx/commit/0577135efa86fec33f1cc9bb10808d31e302a94f
2019-02-19Fix product name included in the binaries (dotnet/corefx#35408)Jan Kotas
Commit migrated from https://github.com/dotnet/corefx/commit/6999d5e9809c22be73b71ab1f16d83721cc245e4
2019-01-29Remove buildtools imports from Directory.Build.* (dotnet/corefx#34001)Eric StJohn
* Remove buildtools imports from Directory.Build.* Remove buildtools imports and implement remaining functionality in CoreFx. I was able to do most of what BuildTools was doing with 3 exceptions, which will be split into separate issues. 1. Test shared framework deps file: GenerateDepsJson. We need to port this task to arcade or change how we test to not need it. 2. codeOptimization.targets -> should be moved to arcade, work is pending. 3. optionalTooling.targets -> move to a CSProj that is restored by the official build workflow. * Address feedack, fix unix and UAP build issues * Fix UWP, Tizen, and AllConfigurations build * Remove buildtools dependency from package testing * Remove a few more buildtools dependencies * Eliminate RunningOnUnix property * Remove NuGetTargetMoniker from shims.proj * Remove ResourcesFolderPath * Fix Microsoft.XmlSerializer.Generator.Tests * Specify NuGetTargetMoniker for shims * Remove a couple remaining ToolsDir uses Commit migrated from https://github.com/dotnet/corefx/commit/49d249fa023e8575dba7e35febb4446e4fa13f98
2019-01-18Renamed Microsoft.VisualBasic to Microsoft.VisualBasic.Core ↵Fred Silberberg
(dotnet/corefx#34087) * Renamed Microsoft.VisualBasic to Microsoft.VisualBasic.Core Part of porting Microsoft.VisualBasic to core. A facade for Microsoft.VisualBasic is now generated in place of the original dll so existing applications will be able to continue with the same set of references. * Addressed feedback * Address PR feedback. * Continued work on renaming * Remove package for Microsoft.VisualBasic.Core and make API additions framework specific (cherry picked from commit dotnet/corefx@0ef22b502e77b06f68e97e0614144da8c05b08ef) * Fix test Configurations * Fix VB test build for UAP * PR feedback. Commit migrated from https://github.com/dotnet/corefx/commit/90dc9459b8eaf0c8ac93440e58c7535c67dacc22
2018-10-29Fix a couple typos in commentsWes Haggard
Commit migrated from https://github.com/dotnet/corefx/commit/9568db803c4ac9a8771575af1f46e59153978b42
2018-10-29Switch to arcade versioningWes Haggard
Fix VersionSuffix for runtime package dependency versions Fix version.txt generation for packaging Add source link packages to enable source link Add sourcelink package feed for tools restore Bump file version to 4.7 Since we are changing file version scheme with the switch to arcade we need to bump the minor version to avoid file versions becoming less then then were in previous releases. Commit migrated from https://github.com/dotnet/corefx/commit/a894228ef3d736d8dac7c004c0fe92acf2fdd285