From 8733ef2bba67a449e74addb71c6725b3dedcc6fe Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Thu, 17 Sep 2020 14:34:01 -0700 Subject: [PATCH 01/56] .NET Core WPF Build error on custom BaseIntermediateOutputPath #1718 (#3120) * Use more robust relative path calculation in markup code generation --- .../Internal/MarkupCompiler/MarkupCompiler.cs | 18 +- .../Internal/MarkupCompiler/PathInternal.cs | 382 ++++++++++++++++++ .../PresentationBuildTasks.csproj | 2 + 3 files changed, 389 insertions(+), 13 deletions(-) create mode 100644 src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs index 8adf6cf0664..a2dce6f3559 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs @@ -1575,19 +1575,11 @@ private string ParentFolderPrefix { get { - string parentFolderPrefix = string.Empty; - if (TargetPath.StartsWith(SourceFileInfo.SourcePath, StringComparison.OrdinalIgnoreCase)) - { - string relPath = TargetPath.Substring(SourceFileInfo.SourcePath.Length); - relPath += SourceFileInfo.RelativeSourceFilePath; - string[] dirs = relPath.Split(new Char[] { Path.DirectorySeparatorChar }); - for (int i = 1; i < dirs.Length; i++) - { - parentFolderPrefix += PARENTFOLDER; - } - } - - return parentFolderPrefix; +#if NETFX + return PathInternal.GetRelativePath(TargetPath, SourceFileInfo.SourcePath, StringComparison.OrdinalIgnoreCase); +#else + return Path.GetRelativePath(TargetPath, SourceFileInfo.SourcePath); +#endif } } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs new file mode 100644 index 00000000000..661aa18714e --- /dev/null +++ b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs @@ -0,0 +1,382 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +//--------------------------------------------------------------------------- +// +// Description: +// Returns a relative path from one path to another. +// +// Paths are resolved by calling the GetFullPath method before calculating +// the difference. The method uses the default file path comparison for the +// current platform (StringComparison.OrdinalIgnoreCase for Windows.) +// +//--------------------------------------------------------------------------- + +#pragma warning disable 1634, 1691 + +using System; +using System.Xml; +using System.IO; +using System.Text; +using System.Reflection; +using System.Globalization; +using System.ComponentModel; +using System.Security.Cryptography; + +using System.CodeDom; +using System.CodeDom.Compiler; +using System.Collections; +using System.Collections.Generic; +using System.ComponentModel.Design.Serialization; + +using System.Diagnostics; +using System.Diagnostics.CodeAnalysis; + +using System.Threading; +using MS.Internal.Markup; +using MS.Internal.Tasks; +using MS.Utility; // for SR +using Microsoft.Build.Utilities; +using Microsoft.Build.Tasks.Windows; +using System.Runtime.CompilerServices; + +namespace MS.Internal +{ + internal sealed class PathInternal + { + internal static string GetRelativePath(string relativeTo, string path, StringComparison comparisonType) + { + if (relativeTo == null) + throw new ArgumentNullException(nameof(relativeTo)); + + if (PathInternal.IsEffectivelyEmpty(relativeTo.AsSpan())) + throw new ArgumentException(nameof(relativeTo)); + + if (path == null) + throw new ArgumentNullException(nameof(path)); + + if (PathInternal.IsEffectivelyEmpty(path.AsSpan())) + throw new ArgumentException(nameof(path)); + + Debug.Assert(comparisonType == StringComparison.Ordinal || comparisonType == StringComparison.OrdinalIgnoreCase); + + relativeTo = Path.GetFullPath(relativeTo); + path = Path.GetFullPath(path); + + // Need to check if the roots are different- if they are we need to return the "to" path. + if (!PathInternal.AreRootsEqual(relativeTo, path, comparisonType)) + return path; + + int commonLength = PathInternal.GetCommonPathLength(relativeTo, path, ignoreCase: comparisonType == StringComparison.OrdinalIgnoreCase); + + // If there is nothing in common they can't share the same root, return the "to" path as is. + if (commonLength == 0) + return path; + + // Trailing separators aren't significant for comparison + int relativeToLength = relativeTo.Length; + if (DoesEndInDirectorySeparator(relativeTo.AsSpan())) + relativeToLength--; + + bool pathEndsInSeparator = DoesEndInDirectorySeparator(path.AsSpan()); + int pathLength = path.Length; + if (pathEndsInSeparator) + pathLength--; + + // If we have effectively the same path, return "." + if (relativeToLength == pathLength && commonLength >= relativeToLength) return CurrentDir.ToString(); + + // We have the same root, we need to calculate the difference now using the + // common Length and Segment count past the length. + // + // Some examples: + // + // C:\Foo C:\Bar L3, S1 -> ..\Bar + // C:\Foo C:\Foo\Bar L6, S0 -> Bar + // C:\Foo\Bar C:\Bar\Bar L3, S2 -> ..\..\Bar\Bar + // C:\Foo\Foo C:\Foo\Bar L7, S1 -> ..\Bar + + var sb = new StringBuilder(); + + // Add parent segments for segments past the common on the "from" path + if (commonLength < relativeToLength) + { + sb.Append(ParentDir); + + for (int i = commonLength + 1; i < relativeToLength; i++) + { + if (PathInternal.IsDirectorySeparator(relativeTo[i])) + { + sb.Append(Path.DirectorySeparatorChar); + sb.Append(ParentDir); + } + } + } + else if (PathInternal.IsDirectorySeparator(path[commonLength])) + { + // No parent segments and we need to eat the initial separator + // (C:\Foo C:\Foo\Bar case) + commonLength++; + } + + // Now add the rest of the "to" path, adding back the trailing separator + int differenceLength = pathLength - commonLength; + if (pathEndsInSeparator) + differenceLength++; + + if (differenceLength > 0) + { + if (sb.Length > 0) + { + sb.Append(Path.DirectorySeparatorChar); + } + + sb.Append(path, commonLength, differenceLength); + } + + return sb.ToString(); + } + + /// + /// True if the given character is a directory separator. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + internal static bool IsDirectorySeparator(char c) + { + return c == Path.DirectorySeparatorChar || c == Path.AltDirectorySeparatorChar; + } + + /// + /// Get the common path length from the start of the string. + /// + internal static int GetCommonPathLength(string first, string second, bool ignoreCase) + { + int commonChars = EqualStartingCharacterCount(first, second, ignoreCase); + + // If nothing matches + if (commonChars == 0) + return commonChars; + + // Or we're a full string and equal length or match to a separator + if (commonChars == first.Length + && (commonChars == second.Length || IsDirectorySeparator(second[commonChars]))) + return commonChars; + + if (commonChars == second.Length && IsDirectorySeparator(first[commonChars])) + return commonChars; + + // It's possible we matched somewhere in the middle of a segment e.g. C:\Foodie and C:\Foobar. + while (commonChars > 0 && !IsDirectorySeparator(first[commonChars - 1])) + commonChars--; + + return commonChars; + } + + /// + /// Returns true if the two paths have the same root + /// + internal static bool AreRootsEqual(string first, string second, StringComparison comparisonType) + { + int firstRootLength = GetRootLength(first.AsSpan()); + int secondRootLength = GetRootLength(second.AsSpan()); + + return firstRootLength == secondRootLength + && string.Compare( + strA: first, + indexA: 0, + strB: second, + indexB: 0, + length: firstRootLength, + comparisonType: comparisonType) == 0; + } + + /// + /// Returns true if the path is effectively empty for the current OS. + /// For unix, this is empty or null. For Windows, this is empty, null, or + /// just spaces ((char)32). + /// + internal static bool IsEffectivelyEmpty(ReadOnlySpan path) + { + if (path.IsEmpty) + return true; + + foreach (char c in path) + { + if (c != ' ') + return false; + } + return true; + } + + + /// + /// Gets the length of the root of the path (drive, share, etc.). + /// + internal static int GetRootLength(ReadOnlySpan path) + { + int pathLength = path.Length; + int i = 0; + + bool deviceSyntax = IsDevice(path); + bool deviceUnc = deviceSyntax && IsDeviceUNC(path); + + if ((!deviceSyntax || deviceUnc) && pathLength > 0 && IsDirectorySeparator(path[0])) + { + // UNC or simple rooted path (e.g. "\foo", NOT "\\?\C:\foo") + if (deviceUnc || (pathLength > 1 && IsDirectorySeparator(path[1]))) + { + // UNC (\\?\UNC\ or \\), scan past server\share + + // Start past the prefix ("\\" or "\\?\UNC\") + i = deviceUnc ? UncExtendedPrefixLength : UncPrefixLength; + + // Skip two separators at most + int n = 2; + while (i < pathLength && (!IsDirectorySeparator(path[i]) || --n > 0)) + i++; + } + else + { + // Current drive rooted (e.g. "\foo") + i = 1; + } + } + else if (deviceSyntax) + { + // Device path (e.g. "\\?\.", "\\.\") + // Skip any characters following the prefix that aren't a separator + i = DevicePrefixLength; + while (i < pathLength && !IsDirectorySeparator(path[i])) + i++; + + // If there is another separator take it, as long as we have had at least one + // non-separator after the prefix (e.g. don't take "\\?\\", but take "\\?\a\") + if (i < pathLength && i > DevicePrefixLength && IsDirectorySeparator(path[i])) + i++; + } + else if (pathLength >= 2 + && path[1] == VolumeSeparatorChar + && IsValidDriveChar(path[0])) + { + // Valid drive specified path ("C:", "D:", etc.) + i = 2; + + // If the colon is followed by a directory separator, move past it (e.g "C:\") + if (pathLength > 2 && IsDirectorySeparator(path[2])) + i++; + } + + return i; + } + + /// + /// Gets the count of common characters from the left optionally ignoring case + /// + internal static unsafe int EqualStartingCharacterCount(string first, string second, bool ignoreCase) + { + if (string.IsNullOrEmpty(first) || string.IsNullOrEmpty(second)) return 0; + + int commonChars = 0; + + fixed (char* f = first) + fixed (char* s = second) + { + char* l = f; + char* r = s; + char* leftEnd = l + first.Length; + char* rightEnd = r + second.Length; + + while (l != leftEnd && r != rightEnd + && (*l == *r || (ignoreCase && char.ToUpperInvariant((*l)) == char.ToUpperInvariant((*r))))) + { + commonChars++; + l++; + r++; + } + } + + return commonChars; + } + + /// + /// Returns true if the path uses any of the DOS device path syntaxes. ("\\.\", "\\?\", or "\??\") + /// + internal static bool IsDevice(ReadOnlySpan path) + { + // If the path begins with any two separators is will be recognized and normalized and prepped with + // "\??\" for internal usage correctly. "\??\" is recognized and handled, "/??/" is not. + return IsExtended(path) + || + ( + path.Length >= DevicePrefixLength + && IsDirectorySeparator(path[0]) + && IsDirectorySeparator(path[1]) + && (path[2] == '.' || path[2] == '?') + && IsDirectorySeparator(path[3]) + ); + } + + /// + /// Returns true if the path is a device UNC (\\?\UNC\, \\.\UNC\) + /// + internal static bool IsDeviceUNC(ReadOnlySpan path) + { + return path.Length >= UncExtendedPrefixLength + && IsDevice(path) + && IsDirectorySeparator(path[7]) + && path[4] == 'U' + && path[5] == 'N' + && path[6] == 'C'; + } + + /// + /// Returns true if the given character is a valid drive letter + /// + internal static bool IsValidDriveChar(char value) + { + return ((value >= 'A' && value <= 'Z') || (value >= 'a' && value <= 'z')); + } + + /// + /// Returns true if the path uses the canonical form of extended syntax ("\\?\" or "\??\"). If the + /// path matches exactly (cannot use alternate directory separators) Windows will skip normalization + /// and path length checks. + /// + internal static bool IsExtended(ReadOnlySpan path) + { + // While paths like "//?/C:/" will work, they're treated the same as "\\.\" paths. + // Skipping of normalization will *only* occur if back slashes ('\') are used. + return path.Length >= DevicePrefixLength + && path[0] == '\\' + && (path[1] == '\\' || path[1] == '?') + && path[2] == '?' + && path[3] == '\\'; + } + + /// + /// Returns true if the path ends in a directory separator. + /// + public static bool DoesEndInDirectorySeparator(ReadOnlySpan path) + => path.Length > 0 && PathInternal.IsDirectorySeparator(path[path.Length - 1]); + + /// + /// Returns true if the path ends in a directory separator. + /// + public static bool DoesEndInDirectorySeparator(string path) + => path != null && path.Length > 0 && PathInternal.IsDirectorySeparator(path[path.Length - 1]); + + internal const char VolumeSeparatorChar = ':'; + // \\?\UNC\, \\.\UNC\ + internal const int UncExtendedPrefixLength = 8; + // \\?\, \\.\, \??\ + internal const int DevicePrefixLength = 4; + // \\ + internal const int UncPrefixLength = 2; + // ".." + internal const string ParentDir = ".."; + // '.' + internal const char CurrentDir = '.'; + } +} + diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj index 9946655962a..38b33730d47 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj +++ b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj @@ -27,6 +27,7 @@ true true AnyCPU;x64 + true @@ -278,6 +279,7 @@ + From 17ed1f6995cf4707768791aba76801edeaa742a7 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Tue, 22 Sep 2020 16:50:18 -0700 Subject: [PATCH 02/56] Do not reflow lines after measure --- .../System/Windows/Controls/TextBlock.cs | 134 ++++++++++++++++-- 1 file changed, 119 insertions(+), 15 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/TextBlock.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/TextBlock.cs index 2bd7d036d5e..282b5e18a4e 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/TextBlock.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/TextBlock.cs @@ -1504,7 +1504,7 @@ protected sealed override Size ArrangeOverride(Size arrangeSize) { // Check if paragraph ellipsis are added to this line bool ellipsis = ParagraphEllipsisShownOnLine(i, lineOffset.Y - contentOffset.Y); - line.Format(dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, _textBlockCache._textRunCache, ellipsis); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, _textBlockCache._textRunCache, ellipsis); // Check that lineMetrics length and line length are in sync // Workaround for (Crash when mouse over a Button with TextBlock). Re-enable this assert when MIL Text issue is fixed. @@ -1638,7 +1638,7 @@ protected sealed override void OnRender(DrawingContext ctx) { using (line) { - line.Format(dcp, wrappingWidth, GetLineProperties(dcp == 0, showParagraphEllipsis, lineProperties), lineMetrics.TextLineBreak, _textBlockCache._textRunCache, showParagraphEllipsis); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(dcp == 0, showParagraphEllipsis, lineProperties), lineMetrics.TextLineBreak, _textBlockCache._textRunCache, showParagraphEllipsis); // Workaround for (Crash when mouse over a Button with TextBlock). Re-enable this assert when MIL Text issue is fixed. //if (!showParagraphEllipsis) @@ -1778,7 +1778,7 @@ protected virtual IInputElement InputHitTestCore(Point point) { // Check if paragraph ellipsis are rendered bool ellipsis = ParagraphEllipsisShownOnLine(i, lineOffset); - line.Format(dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); // Verify consistency of line formatting // Check that lineMetrics.Length is in sync with line.Length @@ -1902,7 +1902,7 @@ protected virtual ReadOnlyCollection GetRectanglesCore(ContentElement chil { // Check if paragraph ellipsis are rendered bool ellipsis = ParagraphEllipsisShownOnLine(lineIndex, lineOffset); - line.Format(lineStart, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); + Format(line, lineMetrics.Length, lineStart, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); // Verify consistency of line formatting // Workaround for (Crash when mouse over a Button with TextBlock). Re-enable this assert when MIL Text issue is fixed. @@ -2171,16 +2171,17 @@ internal void GetLineDetails(int dcp, int index, double lineVOffset, out int cch double wrappingWidth = CalcWrappingWidth(RenderSize.Width); TextRunCache textRunCache = new TextRunCache(); + LineMetrics lineMetrics = GetLine(index); // Retrieve details from the line. - using(Line line = CreateLine(lineProperties)) + using (Line line = CreateLine(lineProperties)) { // Format line. Set showParagraphEllipsis flag to false TextLineBreak textLineBreak = GetLine(index).TextLineBreak; bool ellipsis = ParagraphEllipsisShownOnLine(index, lineVOffset); - line.Format(dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), textLineBreak, textRunCache, ellipsis); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), textLineBreak, textRunCache, ellipsis); - MS.Internal.Invariant.Assert(GetLine(index).Length == line.Length, "Line length is out of sync"); + MS.Internal.Invariant.Assert(lineMetrics.Length == line.Length, "Line length is out of sync"); cchContent = line.ContentLength; cchEllipses = line.GetEllipsesLength(); @@ -2219,15 +2220,16 @@ internal ITextPointer GetTextPositionFromDistance(int dcp, double distance, doub lineVOffset -= contentOffset.Y; TextRunCache textRunCache = new TextRunCache(); + LineMetrics lineMetrics = GetLine(index); ITextPointer pos; using(Line line = CreateLine(lineProperties)) { MS.Internal.Invariant.Assert(index >= 0 && index < LineCount); TextLineBreak textLineBreak = GetLine(index).TextLineBreak; bool ellipsis = ParagraphEllipsisShownOnLine(index, lineVOffset); - line.Format(dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), textLineBreak, textRunCache, ellipsis); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), textLineBreak, textRunCache, ellipsis); - MS.Internal.Invariant.Assert(GetLine(index).Length == line.Length, "Line length is out of sync"); + MS.Internal.Invariant.Assert(lineMetrics.Length == line.Length, "Line length is out of sync"); CharacterHit charIndex = line.GetTextPositionFromDistance(distance); LogicalDirection logicalDirection; @@ -2297,7 +2299,7 @@ internal Rect GetRectangleFromTextPosition(ITextPointer orientedPosition) using(Line line = CreateLine(lineProperties)) { bool ellipsis = ParagraphEllipsisShownOnLine(i, lineOffset); - line.Format(dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); // Check consistency of line length MS.Internal.Invariant.Assert(lineMetrics.Length == line.Length, "Line length is out of sync"); @@ -2399,7 +2401,7 @@ internal Geometry GetTightBoundingGeometryFromTextPositions(ITextPointer startPo using (line) { bool ellipsis = ParagraphEllipsisShownOnLine(i, lineOffset); - line.Format(dcpLineStart, wrappingWidth, GetLineProperties(dcpLineStart == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); + Format(line, lineMetrics.Length, dcpLineStart, wrappingWidth, GetLineProperties(dcpLineStart == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); if (Invariant.Strict) { @@ -2503,7 +2505,7 @@ internal bool IsAtCaretUnitBoundary(ITextPointer position, int dcp, int lineInde { // Format line. Set showParagraphEllipsis flag to false since we are not using information about // ellipsis to change line offsets in this case. - line.Format(dcp, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, false); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, false); // Check consistency of line formatting MS.Internal.Invariant.Assert(lineMetrics.Length == line.Length, "Line length is out of sync"); @@ -2591,7 +2593,7 @@ internal ITextPointer GetNextCaretUnitPosition(ITextPointer position, LogicalDir { // Format line. Set showParagraphEllipsis flag to false since we are not using information about // ellipsis to change line offsets in this case. - line.Format(dcp, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, false); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, false); // Check consistency of line formatting MS.Internal.Invariant.Assert(lineMetrics.Length == line.Length, "Line length is out of sync"); @@ -2700,7 +2702,7 @@ internal ITextPointer GetBackspaceCaretUnitPosition(ITextPointer position, int d { // Format line. Set showParagraphEllipsis flag to false since we are not using information about // ellipsis to change line offsets in this case. - line.Format(dcp, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, false); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(lineIndex == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, false); // Check consistency of line formatting MS.Internal.Invariant.Assert(lineMetrics.Length == line.Length, "Line length is out of sync"); @@ -3326,6 +3328,108 @@ private double CalcWrappingWidth(double width) return width; } + // ------------------------------------------------------------------ + // Wrapper for line.Format that tries to make the same line-break decisions as Measure + // ------------------------------------------------------------------ + private void Format(Line line, int length, int dcp, double wrappingWidth, TextParagraphProperties paragraphProperties, TextLineBreak textLineBreak, TextRunCache textRunCache, bool ellipsis) + { + line.Format(dcp, wrappingWidth, paragraphProperties, textLineBreak, textRunCache, ellipsis); + + // line.Format can reflow (make a different line-break + // decision than it did during measure), contrary to the comment + // in CalcWrappingWidth "Reflowing will not happen when Width is + // between _previousDesiredSize.Width and ReferenceWidth", if the + // line contains text that gets shaped in a way that reduces the + // total width. Here is an example. + // Text="ABCDE IAATA Corp." TextWrapping=Wrap ReferenceWidth=115 + // 1. Measure calls FormatLine(115), which determines that the full + // text is wider than 115 and breaks it after the second word. + // The resulting desired width is 83.3167 - the length of + // the first line "ABCDE IAATA" + // 2. Render, HitTest, et al. call FormatLine(83.3167), which determines + // that the first two words are already wider than 83.3167 and + // breaks after the first word. + // 3. FormatLine uses unshaped glyph widths to determine how much text + // to consider in line-breaking decisions. But it reports the + // width of the lines it produces using shaped glyph widths. + // In the example, the sequence "ATA" gets kerned closer together, + // making the shaped width of the first two words (83.3167) + // about 2.6 pixels less than the unshaped width (85.96). + // This is enough to produce the "reflowing". + // The consequences of reflowing are bad. In the example, the second + // word is not rendered, and programmatic editing crashes with FailFast. + // + // In light of this, we need to work harder to ensure that reflowing + // doesn't happen. The obvious idea to accomplish this is to change + // FormatLine to use shaped widths throughout, but that would mean + // changing the callbacks from LineServices and DWrite, and asserting + // that the changes have no unforseen consequences - out of scope. + // Instead, we'll call FormatLine with a target width large enough + // to produce the right line-break. + // + // This has consequences, especially when TextAlignment=Justify - + // the line is justified to the larger width rather than to wrappingWidth, + // which makes the text extend past the arrange-rect. To mitigate this, + // use the smallest width between wrappingWidth and ReferenceWidth that produces the + // right line-break. + // + // This fixes the cases of missing text and FailFast, at the cost of + // 1. more calls to FormatLine (perf hit) + // 2. justified text sticks out of the arrange-rect + // It's pay-for-play - we only do it on lines that reflow. + + if (line.Length < length) // reflow happened + { + double goodWidth = _referenceSize.Width; // no reflow at this width + double badWidth = wrappingWidth; // reflow at this width + // Make sure that TextFormatter limitations are not exceeded. + TextDpi.EnsureValidLineWidth(ref goodWidth); // wrappingWidth is already valid, per CalcWrappingWidth + + // The smallest good width can't be calcluated in advance, as it's + // dependent on the shaped and unshaped glyph-widths and the available + // width in a complicated way. Instead, binary search. + const double tolerance = 0.01; // allow a small overshoot, to limit the number of iterations + + // In practice, the smallest good width is quite close to wrappingWidth, + // so start with "bottom-up binary search". + for (double delta = tolerance; /* goodWidth not found */; delta *= 2.0) + { + double width = badWidth + delta; + if (width > goodWidth) + break; // don't increase goodWidth + + line.Format(dcp, width, paragraphProperties, textLineBreak, textRunCache, ellipsis); + if (line.Length < length) + { + badWidth = width; + } + else + { + goodWidth = width; + break; + } + } + + // now do a regular binary search on the remaining interval + for (double delta = (goodWidth - badWidth) / 2.0; delta > tolerance; delta /= 2.0) + { + double width = badWidth + delta; + line.Format(dcp, width, paragraphProperties, textLineBreak, textRunCache, ellipsis); + if (line.Length < length) + { + badWidth = width; + } + else + { + goodWidth = width; + } + } + + // now format at goodwidth, with no reflow + line.Format(dcp, goodWidth, paragraphProperties, textLineBreak, textRunCache, ellipsis); + } + } + // ------------------------------------------------------------------ // Aborts calculation by throwing exception if world has changed // while in measure / arrange / render process. @@ -3415,7 +3519,7 @@ private void AlignContent() using (line) { bool ellipsis = ParagraphEllipsisShownOnLine(i, lineOffset); - line.Format(dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); + Format(line, lineMetrics.Length, dcp, wrappingWidth, GetLineProperties(dcp == 0, lineProperties), lineMetrics.TextLineBreak, textRunCache, ellipsis); double lineHeight = CalcLineAdvance(line.Height, lineProperties); // Check consistency of line formatting From 5be1d2f8f09d281eed2923d480e51d121aa139bb Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Tue, 22 Sep 2020 17:09:57 -0700 Subject: [PATCH 03/56] disconnect HostVisual on its own thread --- .../System/Windows/Media/HostVisual.cs | 243 +++++++++++++++--- .../src/WpfGfx/include/exports.cs | 17 ++ 2 files changed, 229 insertions(+), 31 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs index c1b94aab24d..980fdda4b7f 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs @@ -125,9 +125,16 @@ internal override void FreeContent(DUCE.Channel channel) using (CompositionEngineLock.Acquire()) { - DisconnectHostedVisual( - channel, - /* removeChannelFromCollection */ true); + // if there's a pending disconnect, do it now preemptively; + // otherwise do the disconnect the normal way. + // This ensures we do the disconnect before calling base, + // as required. + if (!DoPendingDisconnect(channel)) + { + DisconnectHostedVisual( + channel, + /* removeChannelFromCollection */ true); + } } base.FreeContent(channel); @@ -252,7 +259,7 @@ private void EnsureHostedVisualConnected(DUCE.Channel channel) // if (!(channel.IsSynchronous) && _target != null - && !_connectedChannels.Contains(channel)) + && !_connectedChannels.ContainsKey(channel)) { Debug.Assert(IsOnChannel(channel)); @@ -323,7 +330,15 @@ private void EnsureHostedVisualConnected(DUCE.Channel channel) channel); } - _connectedChannels.Add(channel); + // remember what channel we connected to, and which thread + // did the connection, so that we can disconnect on the + // same thread. Earlier comments imply this is the HostVisual's + // dispatcher thread, which we assert here. Even if it's not, + // the code downstream should work, or at least not crash + // (even if channelDispatcher is set to null). + Dispatcher channelDispatcher = Dispatcher.FromThread(Thread.CurrentThread); + Debug.Assert(channelDispatcher == this.Dispatcher, "HostVisual connecting on a second thread"); + _connectedChannels.Add(channel, channelDispatcher); // // Indicate that that content composition root has been @@ -364,10 +379,11 @@ private void EnsureHostedVisualConnected(DUCE.Channel channel) /// private void DisconnectHostedVisualOnAllChannels() { - foreach (DUCE.Channel channel in _connectedChannels) + IDictionaryEnumerator ide = _connectedChannels.GetEnumerator() as IDictionaryEnumerator; + while (ide.MoveNext()) { DisconnectHostedVisual( - channel, + (DUCE.Channel)ide.Key, /* removeChannelFromCollection */ false); } @@ -382,31 +398,154 @@ private void DisconnectHostedVisual( DUCE.Channel channel, bool removeChannelFromCollection) { - if (_target != null && _connectedChannels.Contains(channel)) + Dispatcher channelDispatcher; + if (_target != null && _connectedChannels.TryGetValue(channel, out channelDispatcher)) { - DUCE.CompositionNode.RemoveChild( - _proxy.GetHandle(channel), - _target._contentRoot.GetHandle(channel), - channel - ); - - // - // Release the targets handle. If we had duplicated the handle, - // then this removes the duplicated handle, otherwise just decrease - // the ref count for VisualTarget. - // - - _target._contentRoot.ReleaseOnChannel(channel); - - SetFlags(channel, false, VisualProxyFlags.IsContentNodeConnected); + // Adding commands to a channel is not thread-safe, + // we must do the actual work on the same dispatcher thread + // where the connection happened. + if (CoreAppContextSwitches.HostVisualDisconnectsOnWrongThread || + (channelDispatcher != null && channelDispatcher.CheckAccess())) + { + Disconnect(channel, + channelDispatcher, + _proxy.GetHandle(channel), + _target._contentRoot.GetHandle(channel), + _target._contentRoot); + } + else + { + // marshal to the right thread + if (channelDispatcher != null) + { + DispatcherOperation op = channelDispatcher.BeginInvoke( + DispatcherPriority.Normal, + new DispatcherOperationCallback(DoDisconnectHostedVisual), + channel); + + _disconnectData = new DisconnectData( + op: op, + channel: channel, + dispatcher: channelDispatcher, + hostVisual: this, + hostHandle: _proxy.GetHandle(channel), + targetHandle: _target._contentRoot.GetHandle(channel), + contentRoot: _target._contentRoot, + next: _disconnectData); + } + } if (removeChannelFromCollection) { _connectedChannels.Remove(channel); } } + + if (removeChannelFromCollection) + { + _connectedChannels.Remove(channel); + } + } } + /// + /// Callback to disconnect on the right thread + /// + private object DoDisconnectHostedVisual(object arg) + { + using (CompositionEngineLock.Acquire()) + { + DoPendingDisconnect((DUCE.Channel)arg); + } + + return null; + } + + /// + /// Perform a pending disconnect for the given channel. + /// This method should be called under the CompositionEngineLock, + /// on the thread that owns the channel. It can be called either + /// from the dispatcher callback DoDisconnectHostedVisual or + /// from FreeContent, whichever happens to occur first. + /// + /// + /// True if a matching request was found and processed. False if not. + /// + private bool DoPendingDisconnect(DUCE.Channel channel) + { + DisconnectData disconnectData = _disconnectData; + DisconnectData previous = null; + + // search the list for an entry matching the given channel + while (disconnectData != null && (disconnectData.HostVisual != this || disconnectData.Channel != channel)) + { + previous = disconnectData; + disconnectData = disconnectData.Next; + } + + // if no match found, do nothing + if (disconnectData == null) + { + return false; + } + + // remove the matching entry from the list + if (previous == null) + { + _disconnectData = disconnectData.Next; + } + else + { + previous.Next = disconnectData.Next; + } + + // cancel the dispatcher callback, (if we're already in it, + // this call is a no-op) + disconnectData.DispatcherOperation.Abort(); + + // do the actual disconnect + Disconnect(disconnectData.Channel, + disconnectData.ChannelDispatcher, + disconnectData.HostHandle, + disconnectData.TargetHandle, + disconnectData.ContentRoot); + + return true; + } + + /// + /// Do the actual work to disconnect the VisualTarget. + /// This is called (on the channel's thread) either from + /// DisconnectHostedVisual or from DoPendingDisconnect, + /// depending on which thread the request arrived on. + /// + private void Disconnect(DUCE.Channel channel, + Dispatcher channelDispatcher, + DUCE.ResourceHandle hostHandle, + DUCE.ResourceHandle targetHandle, + DUCE.MultiChannelResource contentRoot) + { + if (!CoreAppContextSwitches.HostVisualDisconnectsOnWrongThread) + { + channelDispatcher.VerifyAccess(); + } + + DUCE.CompositionNode.RemoveChild( + hostHandle, + targetHandle, + channel + ); + + // + // Release the targets handle. If we had duplicated the handle, + // then this removes the duplicated handle, otherwise just decrease + // the ref count for VisualTarget. + // + + contentRoot.ReleaseOnChannel(channel); + + SetFlags(channel, false, VisualProxyFlags.IsContentNodeConnected); + } /// /// Invalidate this visual. @@ -437,15 +576,57 @@ private void Invalidate() /// private VisualTarget _target; - /// - /// The channels we have marshalled the visual target composition root. - /// - /// - /// This field is free-threaded and should be accessed from under a lock. - /// - private List _connectedChannels = new List(); + /// + /// The channels we have marshalled the visual target composition root. + /// + /// + /// This field is free-threaded and should be accessed from under a lock. + /// + private Dictionary _connectedChannels = new Dictionary(); - #endregion Private Fields + /// + /// Data needed to disconnect the visual target. + /// + /// + /// This field is free-threaded and should be accessed from under a lock. + /// It's the head of a singly-linked list of pending disconnect requests, + /// each identified by the channel. In practice, the list is either empty + /// or has only one entry. + /// + private static DisconnectData _disconnectData; + + private class DisconnectData + { + public DispatcherOperation DispatcherOperation { get; private set; } + public DUCE.Channel Channel { get; private set; } + public Dispatcher ChannelDispatcher { get; private set; } + public HostVisual HostVisual { get; private set; } + public DUCE.ResourceHandle HostHandle { get; private set; } + public DUCE.ResourceHandle TargetHandle { get; private set; } + public DUCE.MultiChannelResource ContentRoot { get; private set; } + public DisconnectData Next { get; set; } + + public DisconnectData(DispatcherOperation op, + DUCE.Channel channel, + Dispatcher dispatcher, + HostVisual hostVisual, + DUCE.ResourceHandle hostHandle, + DUCE.ResourceHandle targetHandle, + DUCE.MultiChannelResource contentRoot, + DisconnectData next) + { + DispatcherOperation = op; + Channel = channel; + ChannelDispatcher = dispatcher; + HostVisual = hostVisual; + HostHandle = hostHandle; + TargetHandle = targetHandle; + ContentRoot = contentRoot; + Next = next; + } } + + #endregion Private Fields +} } diff --git a/src/Microsoft.DotNet.Wpf/src/WpfGfx/include/exports.cs b/src/Microsoft.DotNet.Wpf/src/WpfGfx/include/exports.cs index 5f67d5575a4..ebeae5054ab 100644 --- a/src/Microsoft.DotNet.Wpf/src/WpfGfx/include/exports.cs +++ b/src/Microsoft.DotNet.Wpf/src/WpfGfx/include/exports.cs @@ -365,6 +365,15 @@ internal struct ChannelSet /// channel. /// internal sealed partial class Channel + #if ENFORCE_CHANNEL_THREAD_ACCESS + : System.Windows.Threading.DispatcherObject + // "Producer" operations - adding commands et al. - should only be done + // on the thread that created the channel. These operations are on the + // hot path, so we don't add the cost of enforcement. To detect + // violations (which can lead to render-thread failures that + // are very difficult to diagnose), build + // PresentationCore with ENFORCE_CHANNEL_THREAD_ACCESS defined. + #endif { /// /// Primary channel. @@ -768,6 +777,10 @@ unsafe internal void SendCommand( int cSize, bool sendInSeparateBatch) { + #if ENFORCE_CHANNEL_THREAD_ACCESS + VerifyAccess(); + #endif + checked { Invariant.Assert(pCommandData != (byte*)0 && cSize > 0); @@ -808,6 +821,10 @@ unsafe internal void BeginCommand( int cbSize, int cbExtra) { + #if ENFORCE_CHANNEL_THREAD_ACCESS + VerifyAccess(); + #endif + checked { Invariant.Assert(cbSize > 0); From 83d1840d99b18c8223b165ea21fbd2fb7331fa77 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Tue, 22 Sep 2020 17:39:20 -0700 Subject: [PATCH 04/56] Fix three scrolling hangs --- .../HierarchicalVirtualizationConstraints.cs | 12 + .../Controls/VirtualizingStackPanel.cs | 219 ++++++++++++++---- 2 files changed, 183 insertions(+), 48 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/HierarchicalVirtualizationConstraints.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/HierarchicalVirtualizationConstraints.cs index 31d28ed1001..25bf9dbe67a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/HierarchicalVirtualizationConstraints.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/HierarchicalVirtualizationConstraints.cs @@ -21,6 +21,7 @@ public HierarchicalVirtualizationConstraints(VirtualizationCacheLength cacheLeng _cacheLength = cacheLength; _cacheLengthUnit = cacheLengthUnit; _viewport = viewport; + _scrollGeneration = 0; // internal field set separately by caller } #endregion @@ -131,11 +132,22 @@ public override int GetHashCode() #endregion + #region Internal properties + + internal long ScrollGeneration + { + get { return _scrollGeneration; } + set { _scrollGeneration = value; } + } + + #endregion + #region Data VirtualizationCacheLength _cacheLength; VirtualizationCacheLengthUnit _cacheLengthUnit; Rect _viewport; + long _scrollGeneration; #endregion } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs index 269b64e1cf5..0d7cad01fed 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs @@ -511,6 +511,8 @@ private void SetHorizontalOffsetImpl(double offset, bool setAnchorInformation) // offset/extent, which ends up scrolling to a "random" place. if (!IsVSP45Compat && Orientation == Orientation.Horizontal) { + IncrementScrollGeneration(); + double delta = Math.Abs(scrollX - oldViewportOffset.X); if (DoubleUtil.LessThanOrClose(delta, ViewportWidth)) { @@ -637,6 +639,8 @@ private void SetVerticalOffsetImpl(double offset, bool setAnchorInformation) // offset/extent, which ends up scrolling to a "random" place. if (!IsVSP45Compat && Orientation == Orientation.Vertical) { + IncrementScrollGeneration(); + double delta = Math.Abs(scrollY - oldViewportOffset.Y); if (DoubleUtil.LessThanOrClose(delta, ViewportHeight)) { @@ -980,9 +984,19 @@ private void OnAnchorOperation(bool isAnchorOperationPending) if (DoubleUtil.LessThan(expectedOffset, 0) || DoubleUtil.GreaterThan(expectedOffset, _scrollData._extent.Width - _scrollData._viewport.Width)) { - Debug.Assert(DoubleUtil.AreClose(actualOffset, 0) || DoubleUtil.AreClose(actualOffset, _scrollData._extent.Width - _scrollData._viewport.Width), "The actual offset should already be at the beginning or the end."); - _scrollData._computedOffset.X = actualOffset; - _scrollData._offset.X = actualOffset; + // the condition can fail due to estimated sizes in subtrees that contribute + // to FindScrollOffset(_scrollData._firstContainerInViewport) but not to + // _scrollData._extent. If that happens, remeasure. + if (DoubleUtil.AreClose(actualOffset, 0) || DoubleUtil.AreClose(actualOffset, _scrollData._extent.Width - _scrollData._viewport.Width)) + { + _scrollData._computedOffset.X = actualOffset; + _scrollData._offset.X = actualOffset; + } + else + { + remeasure = true; + _scrollData._offset.X = expectedOffset; + } } else { @@ -999,9 +1013,19 @@ private void OnAnchorOperation(bool isAnchorOperationPending) if (DoubleUtil.LessThan(expectedOffset, 0) || DoubleUtil.GreaterThan(expectedOffset, _scrollData._extent.Height - _scrollData._viewport.Height)) { - Debug.Assert(DoubleUtil.AreClose(actualOffset, 0) || DoubleUtil.AreClose(actualOffset, _scrollData._extent.Height - _scrollData._viewport.Height), "The actual offset should already be at the beginning or the end."); - _scrollData._computedOffset.Y = actualOffset; - _scrollData._offset.Y = actualOffset; + // the condition can fail due to estimated sizes in subtrees that contribute + // to FindScrollOffset(_scrollData._firstContainerInViewport) but not to + // _scrollData._extent. If that happens, remeasure. + if (DoubleUtil.AreClose(actualOffset, 0) || DoubleUtil.AreClose(actualOffset, _scrollData._extent.Height - _scrollData._viewport.Height)) + { + _scrollData._computedOffset.Y = actualOffset; + _scrollData._offset.Y = actualOffset; + } + else + { + remeasure = true; + _scrollData._offset.Y = expectedOffset; + } } else { @@ -1027,6 +1051,9 @@ private void OnAnchorOperation(bool isAnchorOperationPending) if (!isVSP45Compat) { CancelPendingAnchoredInvalidateMeasure(); + + // remeasure from the root should use fresh effective offsets + IncrementScrollGeneration(); } if (!isAnchorOperationPending) @@ -2149,6 +2176,7 @@ private Size MeasureOverrideImpl(Size constraint, // The viewport constraint used by this panel. // Rect viewport = Rect.Empty, extendedViewport = Rect.Empty; + long scrollGeneration; // // Sizes of cache before/after viewport @@ -2159,7 +2187,7 @@ private Size MeasureOverrideImpl(Size constraint, // // Initialize the viewport for this panel. // - InitializeViewport(parentItem, parentItemStorageProvider, virtualizationInfoProvider, isHorizontal, constraint, ref viewport, ref cacheSize, ref cacheUnit, out extendedViewport); + InitializeViewport(parentItem, parentItemStorageProvider, virtualizationInfoProvider, isHorizontal, constraint, ref viewport, ref cacheSize, ref cacheUnit, out extendedViewport, out scrollGeneration); // =================================================================================== // =================================================================================== @@ -2401,6 +2429,7 @@ private Size MeasureOverrideImpl(Size constraint, ref viewport, ref cacheSize, ref cacheUnit, + ref scrollGeneration, ref foundFirstItemInViewport, ref firstItemInViewportOffset, ref stackPixelSize, @@ -2500,6 +2529,7 @@ private Size MeasureOverrideImpl(Size constraint, ref viewport, ref cacheSize, ref cacheUnit, + ref scrollGeneration, ref foundFirstItemInViewport, ref firstItemInViewportOffset, ref stackPixelSize, @@ -2702,6 +2732,7 @@ private Size MeasureOverrideImpl(Size constraint, ref viewport, ref cacheSize, ref cacheUnit, + ref scrollGeneration, ref foundFirstItemInViewport, ref firstItemInViewportOffset, ref stackPixelSize, @@ -2789,9 +2820,10 @@ private Size MeasureOverrideImpl(Size constraint, ref firstItemInViewportOffset, ref mustDisableVirtualization, ref hasVirtualizingChildren, - ref hasBringIntoViewContainerBeenMeasured); + ref hasBringIntoViewContainerBeenMeasured, + ref scrollGeneration); - if (ItemsChangedDuringMeasure) + if (ItemsChangedDuringMeasure) { // if the Items collection changed, our state is now invalid. Start over. remeasure = true; @@ -2837,9 +2869,10 @@ private Size MeasureOverrideImpl(Size constraint, ref firstItemInViewportOffset, ref mustDisableVirtualization, ref hasVirtualizingChildren, - ref hasBringIntoViewContainerBeenMeasured); + ref hasBringIntoViewContainerBeenMeasured, + ref scrollGeneration); - if (ItemsChangedDuringMeasure) + if (ItemsChangedDuringMeasure) { // if the Items collection changed, our state is now invalid. Start over. remeasure = true; @@ -3043,7 +3076,8 @@ private Size MeasureOverrideImpl(Size constraint, virtualizationInfoProvider, isHorizontal, areContainersUniformlySized, - uniformOrAverageContainerSize); + uniformOrAverageContainerSize, + scrollGeneration); // also revise the offset of the first container, for use in Arrange if (firstContainerInViewport != null) @@ -3084,7 +3118,8 @@ private Size MeasureOverrideImpl(Size constraint, ref viewport, firstContainerInViewport, firstItemInViewportIndex, - firstItemInViewportOffset); + firstItemInViewportOffset, + scrollGeneration); FirstContainerInformationField.SetValue(this, info); } } @@ -3167,10 +3202,11 @@ private Size MeasureOverrideImpl(Size constraint, { // save information needed by Snapshot DependencyObject offsetHost = virtualizationInfoProvider as DependencyObject; + EffectiveOffsetInformation effectiveOffsetInfo = (offsetHost != null) ? EffectiveOffsetInformationField.GetValue(offsetHost) : null; SnapshotData data = new SnapshotData { UniformOrAverageContainerSize = uniformOrAverageContainerPixelSize, UniformOrAverageContainerPixelSize = uniformOrAverageContainerPixelSize, - EffectiveOffsets = (offsetHost != null) ? EffectiveOffsetInformationField.GetValue(offsetHost) : null + EffectiveOffsets = (effectiveOffsetInfo != null) ? effectiveOffsetInfo.OffsetList : null }; SnapshotDataField.SetValue(this, data); } @@ -3192,6 +3228,12 @@ private Size MeasureOverrideImpl(Size constraint, if (remeasure) { + if (!IsVSP45Compat && IsScrolling) + { + // remeasure from the root should use fresh effective offsets + IncrementScrollGeneration(); + } + // // Make another pass of MeasureOverride if remeasure is true. // @@ -3460,10 +3502,11 @@ protected override Size ArrangeOverride(Size arrangeSize) { // save information needed by Snapshot DependencyObject offsetHost = virtualizationInfoProvider as DependencyObject; + EffectiveOffsetInformation effectiveOffsetInfo = (offsetHost != null) ? EffectiveOffsetInformationField.GetValue(offsetHost) : null; SnapshotData data = new SnapshotData { UniformOrAverageContainerSize = uniformOrAverageContainerPixelSize, UniformOrAverageContainerPixelSize = uniformOrAverageContainerPixelSize, - EffectiveOffsets = (offsetHost != null) ? EffectiveOffsetInformationField.GetValue(offsetHost) : null + EffectiveOffsets = (effectiveOffsetInfo != null) ? effectiveOffsetInfo.OffsetList : null }; SnapshotDataField.SetValue(this, data); @@ -3810,7 +3853,8 @@ private void UpdateExtent(bool areItemChangesLocal) virtualizationInfoProvider, isHorizontal, areContainersUniformlySized, - uniformOrAverageContainerSize); + uniformOrAverageContainerSize, + info.ScrollGeneration); } } } @@ -4231,7 +4275,8 @@ private void InitializeViewport( ref Rect viewport, ref VirtualizationCacheLength cacheSize, ref VirtualizationCacheLengthUnit cacheUnit, - out Rect extendedViewport) + out Rect extendedViewport, + out long scrollGeneration) { Size extent = new Size(); bool isVSP45Compat = IsVSP45Compat; @@ -4251,6 +4296,7 @@ private void InitializeViewport( offsetY = _scrollData._offset.Y; extent = _scrollData._extent; viewportSize = _scrollData._viewport; + scrollGeneration = _scrollData._scrollGeneration; if (!IsScrollActive || IgnoreMaxDesiredSize) { @@ -4413,6 +4459,7 @@ private void InitializeViewport( viewport = virtualizationConstraints.Viewport; cacheSize = virtualizationConstraints.CacheLength; cacheUnit = virtualizationConstraints.CacheLengthUnit; + scrollGeneration = virtualizationConstraints.ScrollGeneration; MeasureCaches = virtualizationInfoProvider.InBackgroundLayout; if (isVSP45Compat) @@ -4436,34 +4483,46 @@ private void InitializeViewport( // system. // This replacement stays in effect until the parent panel gives us // an offset from a more recent coordinate change, after which older - // offsets won't appear again. Or an offset that's not on the - // list at all, which means a new scroll motion has started. + // offsets won't appear again. Or until a new scroll motion has started, + // as indicated by a scroll generation that exceeds the one in effect + // when the list was created. DependencyObject container = virtualizationInfoProvider as DependencyObject; - List offsetList = EffectiveOffsetInformationField.GetValue(container); - if (offsetList != null) + EffectiveOffsetInformation effectiveOffsetInfo = EffectiveOffsetInformationField.GetValue(container); + if (effectiveOffsetInfo != null) { - // find the given offset on the list - double offset = isHorizontal ? viewport.X : viewport.Y; + List offsetList = effectiveOffsetInfo.OffsetList; int index = -1; - for (int i=0, n=offsetList.Count; i= scrollGeneration) { - if (LayoutDoubleUtil.AreClose(offset, offsetList[i])) + // find the given offset on the list + double offset = isHorizontal ? viewport.X : viewport.Y; + for (int i = 0, n = offsetList.Count; i < n; ++i) { - index = i; - break; + if (LayoutDoubleUtil.AreClose(offset, offsetList[i])) + { + index = i; + break; + } } } if (ScrollTracer.IsEnabled && ScrollTracer.IsTracing(this)) { - object[] args = new object[offsetList.Count + 4]; - args[0] = viewport.Location; - args[1] = "at"; - args[2] = index; - args[3] = "in"; + object[] args = new object[offsetList.Count + 7]; + args[0] = "gen"; + args[1] = effectiveOffsetInfo.ScrollGeneration; + args[2] = virtualizationConstraints.ScrollGeneration; + args[3] = viewport.Location; + args[4] = "at"; + args[5] = index; + args[6] = "in"; for (int i=0; i childOffsetList = EffectiveOffsetInformationField.GetValue(firstContainer); + EffectiveOffsetInformation effectiveOffsetInformation = EffectiveOffsetInformationField.GetValue(firstContainer); + List childOffsetList = (effectiveOffsetInformation != null) ? effectiveOffsetInformation.OffsetList : null; if (childOffsetList != null) { int count = childOffsetList.Count; @@ -5586,32 +5648,54 @@ private double ComputeEffectiveOffset( // multiple calls to measure this panel before the parent // adjusts to the change in our coordinate system, or calls from // a parent who set its own offset using an older offset from here - List offsetList = EffectiveOffsetInformationField.GetValue(container); - if (offsetList == null) + effectiveOffsetInformation = EffectiveOffsetInformationField.GetValue(container); + if (effectiveOffsetInformation == null || effectiveOffsetInformation.ScrollGeneration != scrollGeneration) { - offsetList = new List(2); - offsetList.Add(oldOffset); + effectiveOffsetInformation = new EffectiveOffsetInformation(scrollGeneration); + effectiveOffsetInformation.OffsetList.Add(oldOffset); } - offsetList.Add(newOffset); + effectiveOffsetInformation.OffsetList.Add(newOffset); if (ScrollTracer.IsEnabled && ScrollTracer.IsTracing(this)) { - object[] args = new object[offsetList.Count]; - for (int i=0; i offsetList = effectiveOffsetInformation.OffsetList; + object[] args = new object[offsetList.Count + 2]; + args[0] = scrollGeneration; + args[1] = ":"; + for (int i = 0; i < offsetList.Count; ++i) { - args[i] = offsetList[i]; + args[i + 2] = offsetList[i]; } ScrollTracer.Trace(this, ScrollTraceOp.StoreSubstOffset, args); } - EffectiveOffsetInformationField.SetValue(container, offsetList); + EffectiveOffsetInformationField.SetValue(container, effectiveOffsetInformation); } return newOffset; } + /// + /// To distinguish effective offsets set during one scrolling operation + /// from those set in a different, each scrolling operation in the + /// virtualizing direction increments the "scroll generation" counter. + /// This counter is saved along with the effective offsets (see + /// ComputeEffectiveOffsets), and compared with the current counter + /// before applying the effective offset (see InitializeViewport). + /// + private void IncrementScrollGeneration() + { + if (!FrameworkAppContextSwitches.OptOutOfEffectiveOffsetHangFix) + { + // This will break if the counter ever rolls over the maximum. + // If you do 1000 scroll operations per second, that will + // happen in about 280 million years. + ++_scrollData._scrollGeneration; + } + } + /// /// DesiredSize is normally computed by summing up the size of all items we've generated. Pixel-based virtualization uses a 'full' desired size. @@ -6559,6 +6643,7 @@ private void SetViewportForChild( Rect parentViewport, VirtualizationCacheLength parentCacheSize, VirtualizationCacheLengthUnit parentCacheUnit, + long scrollGeneration, Size stackPixelSize, Size stackPixelSizeInViewport, Size stackPixelSizeInCacheBeforeViewport, @@ -6671,10 +6756,12 @@ private void SetViewportForChild( if (virtualizingChild != null) { - virtualizingChild.Constraints = new HierarchicalVirtualizationConstraints( + HierarchicalVirtualizationConstraints constraints = new HierarchicalVirtualizationConstraints( childCacheSize, childCacheUnit, childViewport); + constraints.ScrollGeneration = scrollGeneration; + virtualizingChild.Constraints = constraints; virtualizingChild.InBackgroundLayout = MeasureCaches; virtualizingChild.MustDisableVirtualization = mustDisableVirtualization; } @@ -7655,6 +7742,20 @@ private void SyncUniformSizeFlags( if (numContainerSizes > 0) { uniformOrAverageContainerPixelSize = sumOfContainerPixelSizes / numContainerSizes; + + if (UseLayoutRounding) + { + // apply layout rounding to the average size, so that anchored + // scrolls use rounded sizes throughout. Otherwise they can + // hang because of rounding done in layout that isn't accounted + // for in OnAnchor. + DpiScale dpi = GetDpi(); + double dpiScale = isHorizontal ? dpi.DpiScaleX : dpi.DpiScaleY; + uniformOrAverageContainerPixelSize = RoundLayoutValue( + Math.Max(uniformOrAverageContainerPixelSize, dpiScale), // don't round down to 0 + dpiScale); + } + if (IsPixelBased) { uniformOrAverageContainerSize = uniformOrAverageContainerPixelSize; @@ -7938,7 +8039,8 @@ private void MeasureExistingChildBeyondExtendedViewport( ref double firstItemInViewportOffset, ref bool mustDisableVirtualization, ref bool hasVirtualizingChildren, - ref bool hasBringIntoViewContainerBeenMeasured) + ref bool hasBringIntoViewContainerBeenMeasured, + ref long scrollGeneration) { object item = ((ItemContainerGenerator)generator).ItemFromContainer((UIElement)children[childIndex]); Rect viewport = new Rect(); @@ -7978,6 +8080,7 @@ private void MeasureExistingChildBeyondExtendedViewport( ref viewport, ref cacheSize, ref cacheUnit, + ref scrollGeneration, ref foundFirstItemInViewport, ref firstItemInViewportOffset, ref stackPixelSize, @@ -8018,6 +8121,7 @@ private void MeasureChild( ref Rect viewport, ref VirtualizationCacheLength cacheSize, ref VirtualizationCacheLengthUnit cacheUnit, + ref long scrollGeneration, ref bool foundFirstItemInViewport, ref double firstItemInViewportOffset, ref Size stackPixelSize, @@ -8089,6 +8193,7 @@ private void MeasureChild( viewport, cacheSize, cacheUnit, + scrollGeneration, stackPixelSize, stackPixelSizeInViewport, stackPixelSizeInCacheBeforeViewport, @@ -11589,7 +11694,7 @@ private enum BoolField : byte private static readonly UncommonField AnchoredInvalidateMeasureOperationField = new UncommonField(); private static readonly UncommonField ClearIsScrollActiveOperationField = new UncommonField(); private static readonly UncommonField OffsetInformationField = new UncommonField(); - private static readonly UncommonField> EffectiveOffsetInformationField = new UncommonField>(); + private static readonly UncommonField EffectiveOffsetInformationField = new UncommonField(); private static readonly UncommonField SnapshotDataField = new UncommonField(); #endregion @@ -11668,6 +11773,9 @@ internal bool IsEmpty internal double _firstContainerOffsetFromViewport; internal double _expectedDistanceBetweenViewports; + // scroll generation - for effective offsets + internal long _scrollGeneration; + public Vector Offset { get @@ -11780,13 +11888,15 @@ private class FirstContainerInformation public DependencyObject FirstContainer; // first container visible in viewport public int FirstItemIndex; // index of corresponding item public double FirstItemOffset; // offset from top of viewport + public long ScrollGeneration; // current scroll generation - public FirstContainerInformation(ref Rect viewport, DependencyObject firstContainer, int firstItemIndex, double firstItemOffset) + public FirstContainerInformation(ref Rect viewport, DependencyObject firstContainer, int firstItemIndex, double firstItemOffset, long scrollGeneration) { Viewport = viewport; FirstContainer = firstContainer; FirstItemIndex = firstItemIndex; FirstItemOffset = firstItemOffset; + ScrollGeneration = scrollGeneration; } } @@ -11833,6 +11943,19 @@ public Double ItemSize } } + // Info needed to support Effective Offsets + private class EffectiveOffsetInformation + { + public long ScrollGeneration { get; private set; } + public List OffsetList { get; private set; } + + public EffectiveOffsetInformation(long scrollGeneration) + { + ScrollGeneration = scrollGeneration; + OffsetList = new List(2); + } + } + #endregion Information caches #region ScrollTracer From daf9cec2b011dbf3e58ce102f1a4d24cd3c792a9 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Tue, 22 Sep 2020 17:46:37 -0700 Subject: [PATCH 05/56] remove useless Assert --- .../src/WpfGfx/core/resources/glyphrunslave.cpp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/WpfGfx/core/resources/glyphrunslave.cpp b/src/Microsoft.DotNet.Wpf/src/WpfGfx/core/resources/glyphrunslave.cpp index 9edc9eaf4c6..7c81f299d53 100644 --- a/src/Microsoft.DotNet.Wpf/src/WpfGfx/core/resources/glyphrunslave.cpp +++ b/src/Microsoft.DotNet.Wpf/src/WpfGfx/core/resources/glyphrunslave.cpp @@ -1029,14 +1029,6 @@ CGlyphRunResource::GetDWriteRenderingMode(__in IDWriteFontFace *pIDWriteFontFace *pDWriteRenderingMode = DWRITE_RENDERING_MODE_CLEARTYPE_NATURAL; } } - else - { - // This assert is here for an equivalence check with .NET Framework - // when allowing DWrite to choose our rendering mode directly. - Assert((textRenderingMode == MilTextRenderingMode::Auto) - || ((textRenderingMode == MilTextRenderingMode::Aliased) - && !IsDisplayMeasured())); - } } } } From c11c42079cfec918a952ea03f265827d8a6f7d0f Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Tue, 22 Sep 2020 17:54:18 -0700 Subject: [PATCH 06/56] handle re-entrant request to close ToolTip --- .../Windows/Controls/PopupControlService.cs | 67 +++++++++++-------- 1 file changed, 39 insertions(+), 28 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/PopupControlService.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/PopupControlService.cs index be669b0e0a7..859909de83f 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/PopupControlService.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/PopupControlService.cs @@ -546,40 +546,51 @@ private void RaiseToolTipClosingEvent(bool reset) } finally { - if (isOpen) + // Raising an event calls out to app code, which + // could cause a re-entrant call to this method that + // sets _currentToopTip to null. If that happens, + // there's no need to do the work again. + if (_currentToolTip != null) { - _currentToolTip.IsOpen = false; - - // Setting IsOpen makes call outs to app code. So it is possible that - // the _currentToolTip is deleted as a result of an action there. If that - // were the case we do not need to set off the timer to close the tooltip. - if (_currentToolTip != null) + if (isOpen) { - // Keep references and owner set for the fade out or slide animation - // Owner is released when animation completes - _forceCloseTimer = new DispatcherTimer(DispatcherPriority.Normal); - _forceCloseTimer.Interval = Popup.AnimationDelayTime; - _forceCloseTimer.Tick += new EventHandler(OnForceClose); - _forceCloseTimer.Tag = _currentToolTip; - _forceCloseTimer.Start(); + _currentToolTip.IsOpen = false; + + // Setting IsOpen makes call outs to app code. So it is possible that + // the _currentToolTip is nuked as a result of an action there. If that + // were the case we do not need to set off the timer to close the tooltip. + if (_currentToolTip != null) + { + // Keep references and owner set for the fade out or slide animation + // Owner is released when animation completes + _forceCloseTimer = new DispatcherTimer(DispatcherPriority.Normal); + _forceCloseTimer.Interval = Popup.AnimationDelayTime; + _forceCloseTimer.Tick += new EventHandler(OnForceClose); + _forceCloseTimer.Tag = _currentToolTip; + _forceCloseTimer.Start(); + } + + _quickShow = true; + ToolTipTimer = new DispatcherTimer(DispatcherPriority.Normal); + ToolTipTimer.Interval = TimeSpan.FromMilliseconds(ToolTipService.GetBetweenShowDelay(o)); + ToolTipTimer.Tick += new EventHandler(OnBetweenShowDelay); + ToolTipTimer.Start(); } + else + { + // Release owner now + _currentToolTip.ClearValue(OwnerProperty); - _quickShow = true; - ToolTipTimer = new DispatcherTimer(DispatcherPriority.Normal); - ToolTipTimer.Interval = TimeSpan.FromMilliseconds(ToolTipService.GetBetweenShowDelay(o)); - ToolTipTimer.Tick += new EventHandler(OnBetweenShowDelay); - ToolTipTimer.Start(); - } - else - { - // Release owner now - _currentToolTip.ClearValue(OwnerProperty); + if (_ownToolTip) + BindingOperations.ClearBinding(_currentToolTip, ToolTip.ContentProperty); + } - if (_ownToolTip) - BindingOperations.ClearBinding(_currentToolTip, ToolTip.ContentProperty); + if (_currentToolTip != null) + { + _currentToolTip.FromKeyboard = false; + _currentToolTip = null; + } } - _currentToolTip.FromKeyboard = false; - _currentToolTip = null; } } } From ace56f6c963e55b872f745680bd19acce5022ecc Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Wed, 23 Sep 2020 08:47:34 -0700 Subject: [PATCH 07/56] Move StackTrace to error branch --- .../PresentationFramework/System/Windows/Interop/HwndHost.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Interop/HwndHost.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Interop/HwndHost.cs index 025b6c68040..f9dba71f6a8 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Interop/HwndHost.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Interop/HwndHost.cs @@ -983,7 +983,6 @@ private void BuildOrReparentWindow() // window later when a new parent is available var hwnd = SystemResources.GetDpiAwarenessCompatibleNotificationWindow(_hwnd); Debug.Assert(hwnd != null); - Trace.WriteLineIf(hwnd == null, $"- Warning - Notification Window is null\n{new System.Diagnostics.StackTrace(true).ToString()}"); if (hwnd != null) { UnsafeNativeMethods.SetParent(_hwnd, new HandleRef(null, hwnd.Handle)); @@ -998,6 +997,10 @@ private void BuildOrReparentWindow() // shutdown event after this HwndHost. SystemResources.DelayHwndShutdown(); } + else + { + Trace.WriteLineIf(hwnd == null, $"- Warning - Notification Window is null\n{new System.Diagnostics.StackTrace(true).ToString()}"); + } } } finally From bf4c4661e6bda85e810c1f16e9e6ccf7fb804c46 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Wed, 23 Sep 2020 08:57:30 -0700 Subject: [PATCH 08/56] FixedPage SOM bugs --- .../Windows/Documents/FixedSOMPageConstructor.cs | 12 +++++++----- .../System/Windows/Documents/FixedTextBuilder.cs | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedSOMPageConstructor.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedSOMPageConstructor.cs index 7303173a885..a8a7e5a385d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedSOMPageConstructor.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedSOMPageConstructor.cs @@ -717,13 +717,15 @@ private bool _IsCombinable(FixedSOMFixedBlock fixedBlock, FixedSOMTextRun textRu //These two overlap vertically. Let's check whether there is a vertical separator in between double left = (fixedBlockRect.Right < textRunRect.Right) ? fixedBlockRect.Right: textRunRect.Right; double right =(fixedBlockRect.Left > textRunRect.Left) ? fixedBlockRect.Left: textRunRect.Left; - if (left > right) + if (left < right) { - double temp = left; - left = right; - right = temp; + return (!_lines.IsVerticallySeparated(left, textRunRect.Top, right, textRunRect.Bottom)); + } + else + { + // they also overlap horizontally, so they should be combined + return true; } - return (!_lines.IsVerticallySeparated(left, textRunRect.Top, right, textRunRect.Bottom)); } } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedTextBuilder.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedTextBuilder.cs index 90f10ed1826..f147725be83 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedTextBuilder.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Documents/FixedTextBuilder.cs @@ -1033,7 +1033,7 @@ Matrix transform newPathPrefix, // otherwise use this path prefix constructLines, fixedNodes, - transform * localTransform.Value + localTransform.Value * transform ); }//endofElementIsCanvas } From 01dd8de460d8b44242f3c2c707259bc98c1534c2 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Wed, 23 Sep 2020 09:04:51 -0700 Subject: [PATCH 09/56] Don't add null item peers --- .../Peers/DataGridColumnHeadersPresenterAutomationPeer.cs | 2 +- .../Windows/Automation/Peers/GroupItemAutomationPeer.cs | 4 ++-- .../Windows/Automation/Peers/ItemsControlAutomationPeer.cs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridColumnHeadersPresenterAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridColumnHeadersPresenterAutomationPeer.cs index 90d79ea8788..09c2cd62d86 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridColumnHeadersPresenterAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DataGridColumnHeadersPresenterAutomationPeer.cs @@ -131,7 +131,7 @@ protected override List GetChildrenCore() // protection from indistinguishable items - for example, 2 strings with same value // this scenario does not work in ItemsControl however is not checked for. - if (ItemPeers[dataItem] == null) + if (peer != null && ItemPeers[dataItem] == null) { children.Add(peer); ItemPeers[dataItem] = peer; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/GroupItemAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/GroupItemAutomationPeer.cs index a09f0d8194e..ef36a6c382b 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/GroupItemAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/GroupItemAutomationPeer.cs @@ -274,8 +274,8 @@ protected override List GetChildrenCore() // but only if we haven't added a peer for this item during this GetChildrenCore call. bool itemMissingPeerInGlobalStorage = itemsControlAP.ItemPeers[item] == null; - if (itemMissingPeerInGlobalStorage - || (peer?.GetParent() == this && addedChildren[item] == null)) + if (peer != null && (itemMissingPeerInGlobalStorage + || (peer.GetParent() == this && addedChildren[item] == null))) { children.Add(peer); addedChildren[item] = peer; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemsControlAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemsControlAutomationPeer.cs index 890eb4f1a41..df43ac5f2cd 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemsControlAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/ItemsControlAutomationPeer.cs @@ -199,7 +199,7 @@ protected override List GetChildrenCore() // protection from indistinguishable items - for example, 2 strings with same value // this scenario does not work in ItemsControl however is not checked for. - if (_dataChildren[dataItem] == null) + if (peer != null && _dataChildren[dataItem] == null) { children.Add(peer); _dataChildren[dataItem] = peer; From 8158a491afdde7a4628862abfd7d1726e39a2980 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Wed, 23 Sep 2020 09:10:24 -0700 Subject: [PATCH 10/56] Use correct lock object for predefined packages --- .../PresentationFramework/System/Windows/Application.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Application.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Application.cs index 0593bbdb3c4..275a575c0d7 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Application.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Application.cs @@ -700,7 +700,8 @@ public static StreamResourceInfo GetRemoteStream(Uri uriRemote) SiteOfOriginContainer sooContainer = (SiteOfOriginContainer)GetResourcePackage(packageUri); // the SiteOfOriginContainer is shared across threads; synchronize access to it - lock (_packageLock) + // using the same lock object as other uses (PackWebResponse+CachedResponse.GetResponseStream) + lock (sooContainer) { sooPart = sooContainer.GetPart(partUri) as SiteOfOriginPart; } @@ -2017,8 +2018,9 @@ private static PackagePart GetResourceOrContentPart(Uri uri) ResourceContainer resContainer = (ResourceContainer)GetResourcePackage(packageUri); // the ResourceContainer is shared across threads; synchronize access to it + // using the same lock object as other uses (PackWebResponse+CachedResponse.GetResponseStream) PackagePart part = null; - lock (_packageLock) + lock (resContainer) { part = resContainer.GetPart(partUri); } @@ -2417,7 +2419,6 @@ private object RunDispatcher(object ignore) static private bool _appCreatedInThisAppDomain; static private Application _appInstance; static private Assembly _resourceAssembly; - static private object _packageLock = new Object(); // Keep LoadBamlSyncInfo stack so that the Outer LoadBaml and Inner LoadBaml( ) for the same // Uri share the related information. From 7d20243937d6d8465085a8ff9dece509f29584ba Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Wed, 23 Sep 2020 11:46:27 -0700 Subject: [PATCH 11/56] repair bad copy/paste --- .../System/Windows/Media/HostVisual.cs | 102 +++++++++--------- 1 file changed, 48 insertions(+), 54 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs index 980fdda4b7f..5983145c785 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs @@ -440,12 +440,6 @@ private void DisconnectHostedVisual( _connectedChannels.Remove(channel); } } - - if (removeChannelFromCollection) - { - _connectedChannels.Remove(channel); - } - } } /// @@ -576,57 +570,57 @@ private void Invalidate() /// private VisualTarget _target; - /// - /// The channels we have marshalled the visual target composition root. - /// - /// - /// This field is free-threaded and should be accessed from under a lock. - /// - private Dictionary _connectedChannels = new Dictionary(); + /// + /// The channels we have marshalled the visual target composition root. + /// + /// + /// This field is free-threaded and should be accessed from under a lock. + /// + private Dictionary _connectedChannels = new Dictionary(); - /// - /// Data needed to disconnect the visual target. - /// - /// - /// This field is free-threaded and should be accessed from under a lock. - /// It's the head of a singly-linked list of pending disconnect requests, - /// each identified by the channel. In practice, the list is either empty - /// or has only one entry. - /// - private static DisconnectData _disconnectData; - - private class DisconnectData - { - public DispatcherOperation DispatcherOperation { get; private set; } - public DUCE.Channel Channel { get; private set; } - public Dispatcher ChannelDispatcher { get; private set; } - public HostVisual HostVisual { get; private set; } - public DUCE.ResourceHandle HostHandle { get; private set; } - public DUCE.ResourceHandle TargetHandle { get; private set; } - public DUCE.MultiChannelResource ContentRoot { get; private set; } - public DisconnectData Next { get; set; } - - public DisconnectData(DispatcherOperation op, - DUCE.Channel channel, - Dispatcher dispatcher, - HostVisual hostVisual, - DUCE.ResourceHandle hostHandle, - DUCE.ResourceHandle targetHandle, - DUCE.MultiChannelResource contentRoot, - DisconnectData next) + /// + /// Data needed to disconnect the visual target. + /// + /// + /// This field is free-threaded and should be accessed from under a lock. + /// It's the head of a singly-linked list of pending disconnect requests, + /// each identified by the channel and HostVisual. In practice, the list + /// is either empty or has only one entry. + /// + private static DisconnectData _disconnectData; + + private class DisconnectData { - DispatcherOperation = op; - Channel = channel; - ChannelDispatcher = dispatcher; - HostVisual = hostVisual; - HostHandle = hostHandle; - TargetHandle = targetHandle; - ContentRoot = contentRoot; - Next = next; + public DispatcherOperation DispatcherOperation { get; private set; } + public DUCE.Channel Channel { get; private set; } + public Dispatcher ChannelDispatcher { get; private set; } + public HostVisual HostVisual { get; private set; } + public DUCE.ResourceHandle HostHandle { get; private set; } + public DUCE.ResourceHandle TargetHandle { get; private set; } + public DUCE.MultiChannelResource ContentRoot { get; private set; } + public DisconnectData Next { get; set; } + + public DisconnectData(DispatcherOperation op, + DUCE.Channel channel, + Dispatcher dispatcher, + HostVisual hostVisual, + DUCE.ResourceHandle hostHandle, + DUCE.ResourceHandle targetHandle, + DUCE.MultiChannelResource contentRoot, + DisconnectData next) + { + DispatcherOperation = op; + Channel = channel; + ChannelDispatcher = dispatcher; + HostVisual = hostVisual; + HostHandle = hostHandle; + TargetHandle = targetHandle; + ContentRoot = contentRoot; + Next = next; + } } - } - #endregion Private Fields -} + #endregion Private Fields + } } From c042ba0c48ee7999bc76d3c4b5837a772df47687 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Wed, 23 Sep 2020 11:48:23 -0700 Subject: [PATCH 12/56] fix build break --- .../System/Windows/Controls/VirtualizingStackPanel.cs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs index 0d7cad01fed..d85ce7355cd 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/VirtualizingStackPanel.cs @@ -5687,13 +5687,10 @@ private double ComputeEffectiveOffset( /// private void IncrementScrollGeneration() { - if (!FrameworkAppContextSwitches.OptOutOfEffectiveOffsetHangFix) - { - // This will break if the counter ever rolls over the maximum. - // If you do 1000 scroll operations per second, that will - // happen in about 280 million years. - ++_scrollData._scrollGeneration; - } + // This will break if the counter ever rolls over the maximum. + // If you do 1000 scroll operations per second, that will + // happen in about 280 million years. + ++_scrollData._scrollGeneration; } From e628574672ef188fe6c44843397462ef0d2b6f30 Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Thu, 24 Sep 2020 10:07:06 -0700 Subject: [PATCH 13/56] remove AppContext switch --- .../PresentationCore/System/Windows/Media/HostVisual.cs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs index 5983145c785..efab923aa3a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/HostVisual.cs @@ -404,8 +404,7 @@ private void DisconnectHostedVisual( // Adding commands to a channel is not thread-safe, // we must do the actual work on the same dispatcher thread // where the connection happened. - if (CoreAppContextSwitches.HostVisualDisconnectsOnWrongThread || - (channelDispatcher != null && channelDispatcher.CheckAccess())) + if (channelDispatcher != null && channelDispatcher.CheckAccess()) { Disconnect(channel, channelDispatcher, @@ -519,10 +518,7 @@ private void Disconnect(DUCE.Channel channel, DUCE.ResourceHandle targetHandle, DUCE.MultiChannelResource contentRoot) { - if (!CoreAppContextSwitches.HostVisualDisconnectsOnWrongThread) - { - channelDispatcher.VerifyAccess(); - } + channelDispatcher.VerifyAccess(); DUCE.CompositionNode.RemoveChild( hostHandle, From 1e18880ddfa2c112339b15dc55a71a89a6f48c6e Mon Sep 17 00:00:00 2001 From: Sam Bent Date: Thu, 24 Sep 2020 10:37:42 -0700 Subject: [PATCH 14/56] DataGrid.Copy: fail silently if clipboard is locked --- .../System/Windows/Controls/DataGrid.cs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGrid.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGrid.cs index 1122e6593ec..08f5e11b4ab 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGrid.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGrid.cs @@ -9,6 +9,7 @@ using System.Collections.Specialized; using System.ComponentModel; using System.Diagnostics; +using System.Runtime.InteropServices; using System.Security; using System.Text; using System.Windows.Automation; @@ -8336,8 +8337,15 @@ protected virtual void OnExecutedCopy(ExecutedRoutedEventArgs args) dataObject.SetData(format, dataGridStringBuilders[format].ToString(), false /*autoConvert*/); } - Clipboard.CriticalSetDataObject(dataObject, true /* Copy */); - + try + { + Clipboard.CriticalSetDataObject(dataObject, true /* Copy */); + } + catch (ExternalException) + { + // Clipboard failed to set the data object - fail silently. + return; + } } /// From 58b2daacc143bc57a53a1c2ee95330b992e9829e Mon Sep 17 00:00:00 2001 From: Adam Yoblick Date: Thu, 1 Oct 2020 11:03:18 -0500 Subject: [PATCH 15/56] update_intellisense_artifacts --- eng/WpfArcadeSdk/tools/ReferenceAssembly.targets | 2 +- global.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets b/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets index 575fa39cb76..b3256e55bd7 100644 --- a/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets +++ b/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets @@ -46,7 +46,7 @@ Outputs="$(IntellisenseXmlDir)$(AssemblyName).xml"> - 0.0.0.1 + 0.0.0.2 - 5.0.0-rtm.20501.6 + 5.0.0-rtm.20502.2 From ab840c4778badb5ce6b80e99c86a7874242c700e Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Fri, 2 Oct 2020 16:18:50 -0700 Subject: [PATCH 17/56] Remove or replace Policheck violations in code comments (#3606) --- .../src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h | 4 ++-- .../Microsoft/Windows/Controls/Ribbon/RibbonHelper.cs | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h index cf918834cf7..4d82bc8c9a7 100644 --- a/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h +++ b/src/Microsoft.DotNet.Wpf/src/DirectWriteForwarder/CPP/DWriteWrapper/Common.h @@ -84,8 +84,8 @@ private ref class Util sealed /// /// Exceptions known to have security sensitive data are sanitized in this method, - /// by creating copy of original exception without sensitive data and re-thrown. - /// Or, to put another way - this funciton acts only on a known whitelist of HRESULT/IErrorInfo combinations, throwing for matches. + /// by throwing a copy of the original exception without security sensitive data. + /// Or, to put another way - this function acts only on a list of security sensitive HRESULT/IErrorInfo combinations, throwing for matches. /// The IErrorInfo is taken into account in a call to GetExceptionForHR(HRESULT), see MSDN for more details. /// diff --git a/src/Microsoft.DotNet.Wpf/src/System.Windows.Controls.Ribbon/Microsoft/Windows/Controls/Ribbon/RibbonHelper.cs b/src/Microsoft.DotNet.Wpf/src/System.Windows.Controls.Ribbon/Microsoft/Windows/Controls/Ribbon/RibbonHelper.cs index dc4658edddb..a8b2f11317b 100644 --- a/src/Microsoft.DotNet.Wpf/src/System.Windows.Controls.Ribbon/Microsoft/Windows/Controls/Ribbon/RibbonHelper.cs +++ b/src/Microsoft.DotNet.Wpf/src/System.Windows.Controls.Ribbon/Microsoft/Windows/Controls/Ribbon/RibbonHelper.cs @@ -2326,8 +2326,7 @@ private static void TransferMarkupProperties(object original, object clone) markupProp.PropertyDescriptor.ComponentType == typeof(ItemsControl)) { // Skip the ItemsControl.Items property - // since this will be copied as part of - // the whitelist properties. + // since this will be copied automatically. continue; } From f7eeebf3f306ce8c0cbe61368b260711d91464c4 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 6 Oct 2020 14:10:08 +0000 Subject: [PATCH 18/56] Update dependencies from https://github.com/dotnet/winforms build 20201005.2 (#3611) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20501.5 to 5.0.0-rtm.20502.8 (parent: Microsoft.Private.Winforms) --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 99ce716840b..3eee9745f05 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - 98120ed91ea4d4b1e1110cb230a2d88cab6b9d79 + a06aad24fab3f57e390a45a82f35859e658ae1e5 - + https://github.com/dotnet/winforms - 98120ed91ea4d4b1e1110cb230a2d88cab6b9d79 + a06aad24fab3f57e390a45a82f35859e658ae1e5 - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int c85f142d33194b3ab550464fba91fe3fee6b1515 - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a - + https://github.com/dotnet/runtime - b87e3351bf4603bfdb66e14c20921d618db954f9 + 3c6e6cc14728ce9a1955e076d2a758407dc70f5a diff --git a/eng/Versions.props b/eng/Versions.props index c6fc1493fbf..7274ecd87d6 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.2 + 5.0.0-rtm.20505.2 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 - 5.0.0-rtm.20501.5 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 + 5.0.0-rtm.20502.8 From c01a204cfbb98865071e34958866e292c5373beb Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 7 Oct 2020 01:08:29 +0000 Subject: [PATCH 19/56] Update dependencies from https://github.com/dotnet/winforms build 20201006.2 (#3612) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20502.8 to 5.0.0-rtm.20506.3 (parent: Microsoft.Private.Winforms) --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 3eee9745f05..fdd1903d6fe 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - a06aad24fab3f57e390a45a82f35859e658ae1e5 + 9895c14a54241c0e02b1c9b7fd15dd9981e8c08a - + https://github.com/dotnet/winforms - a06aad24fab3f57e390a45a82f35859e658ae1e5 + 9895c14a54241c0e02b1c9b7fd15dd9981e8c08a - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int c85f142d33194b3ab550464fba91fe3fee6b1515 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://github.com/dotnet/runtime - 3c6e6cc14728ce9a1955e076d2a758407dc70f5a + 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 diff --git a/eng/Versions.props b/eng/Versions.props index 7274ecd87d6..7c8b8143e6f 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 - 5.0.0-rtm.20505.2 + 5.0.0-rtm.20506.2 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 - 5.0.0-rtm.20502.8 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 + 5.0.0-rtm.20506.3 From f4219dab090813a638d352c0c054313045443fb5 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 21:14:36 +0000 Subject: [PATCH 20/56] Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int build 20201008.5 (#3618) [release/5.0] Update dependencies from dnceng/internal/dotnet-wpf-int --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index fdd1903d6fe..c4959ca42a6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -65,9 +65,9 @@ https://github.com/dotnet/runtime 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 - + https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int - c85f142d33194b3ab550464fba91fe3fee6b1515 + 11999f719d5c0525c86cd7b79ca2d4f4965687bd https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 7c8b8143e6f..6fab48acc19 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -97,6 +97,6 @@ System.Reflection.MetadataLoadContext - 5.0.0-rc.2.20472.6 + 5.0.0-rtm.20508.5 From cc0bab31b7608b63d28efd24db9f58db1776bf36 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 21:36:35 +0000 Subject: [PATCH 21/56] Update dependencies from https://github.com/dotnet/arcade build 20201006.7 (#3617) [release/5.0] Update dependencies from dotnet/arcade --- eng/Version.Details.xml | 20 +++++++++---------- eng/Versions.props | 6 +++--- eng/common/templates/job/job.yml | 12 ++++++++++- .../templates/steps/perf-send-to-helix.yml | 2 +- eng/common/templates/steps/send-to-helix.yml | 2 +- global.json | 4 ++-- 6 files changed, 28 insertions(+), 18 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index c4959ca42a6..72b36fa7ea1 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -103,25 +103,25 @@ - + https://github.com/dotnet/arcade - 61cde6e8fb9d5c9790867b279deb41783a780cd8 + ee39cd1573dbb8011f343e1037af51d4fc00a747 - + https://github.com/dotnet/arcade - 61cde6e8fb9d5c9790867b279deb41783a780cd8 + ee39cd1573dbb8011f343e1037af51d4fc00a747 - + https://github.com/dotnet/arcade - 61cde6e8fb9d5c9790867b279deb41783a780cd8 + ee39cd1573dbb8011f343e1037af51d4fc00a747 - + https://github.com/dotnet/arcade - 61cde6e8fb9d5c9790867b279deb41783a780cd8 + ee39cd1573dbb8011f343e1037af51d4fc00a747 - + https://github.com/dotnet/arcade - 61cde6e8fb9d5c9790867b279deb41783a780cd8 + ee39cd1573dbb8011f343e1037af51d4fc00a747 diff --git a/eng/Versions.props b/eng/Versions.props index 6fab48acc19..b8a4fef182d 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -42,9 +42,9 @@ - 5.0.0-beta.20474.4 - 5.0.0-beta.20474.4 - 5.0.0-beta.20474.4 + 5.0.0-beta.20506.7 + 5.0.0-beta.20506.7 + 5.0.0-beta.20506.7 diff --git a/eng/common/templates/job/job.yml b/eng/common/templates/job/job.yml index e78ed9a1c6e..8b81a7e5143 100644 --- a/eng/common/templates/job/job.yml +++ b/eng/common/templates/job/job.yml @@ -204,7 +204,7 @@ jobs: - ${{ if eq(parameters.enablePublishTestResults, 'true') }}: - task: PublishTestResults@2 - displayName: Publish Test Results + displayName: Publish XUnit Test Results inputs: testResultsFormat: 'xUnit' testResultsFiles: '*.xml' @@ -213,6 +213,16 @@ jobs: mergeTestResults: ${{ parameters.mergeTestResults }} continueOnError: true condition: always() + - task: PublishTestResults@2 + displayName: Publish TRX Test Results + inputs: + testResultsFormat: 'VSTest' + testResultsFiles: '*.trx' + searchFolder: '$(Build.SourcesDirectory)/artifacts/TestResults/$(_BuildConfig)' + testRunTitle: ${{ coalesce(parameters.testRunTitle, parameters.name, '$(System.JobName)') }}-trx + mergeTestResults: ${{ parameters.mergeTestResults }} + continueOnError: true + condition: always() - ${{ if and(eq(parameters.enablePublishBuildAssets, true), ne(parameters.enablePublishUsingPipelines, 'true'), eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}: - task: CopyFiles@2 diff --git a/eng/common/templates/steps/perf-send-to-helix.yml b/eng/common/templates/steps/perf-send-to-helix.yml index 8427de59cd1..a468e92ce44 100644 --- a/eng/common/templates/steps/perf-send-to-helix.yml +++ b/eng/common/templates/steps/perf-send-to-helix.yml @@ -11,7 +11,7 @@ parameters: WorkItemDirectory: '' # optional -- a payload directory to zip up and send to Helix; requires WorkItemCommand; incompatible with XUnitProjects CorrelationPayloadDirectory: '' # optional -- a directory to zip up and send to Helix as a correlation payload IncludeDotNetCli: false # optional -- true will download a version of the .NET CLI onto the Helix machine as a correlation payload; requires DotNetCliPackageType and DotNetCliVersion - DotNetCliPackageType: '' # optional -- either 'sdk' or 'runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases.json + DotNetCliPackageType: '' # optional -- either 'sdk', 'runtime' or 'aspnetcore-runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases.json DotNetCliVersion: '' # optional -- version of the CLI to send to Helix; based on this: https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases.json EnableXUnitReporter: false # optional -- true enables XUnit result reporting to Mission Control WaitForWorkItemCompletion: true # optional -- true will make the task wait until work items have been completed and fail the build if work items fail. False is "fire and forget." diff --git a/eng/common/templates/steps/send-to-helix.yml b/eng/common/templates/steps/send-to-helix.yml index 5eceb48725d..bb5f1a92938 100644 --- a/eng/common/templates/steps/send-to-helix.yml +++ b/eng/common/templates/steps/send-to-helix.yml @@ -18,7 +18,7 @@ parameters: XUnitRuntimeTargetFramework: '' # optional -- framework to use for the xUnit console runner XUnitRunnerVersion: '' # optional -- version of the xUnit nuget package you wish to use on Helix; required for XUnitProjects IncludeDotNetCli: false # optional -- true will download a version of the .NET CLI onto the Helix machine as a correlation payload; requires DotNetCliPackageType and DotNetCliVersion - DotNetCliPackageType: '' # optional -- either 'sdk' or 'runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json + DotNetCliPackageType: '' # optional -- either 'sdk', 'runtime' or 'aspnetcore-runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json DotNetCliVersion: '' # optional -- version of the CLI to send to Helix; based on this: https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json EnableXUnitReporter: false # optional -- true enables XUnit result reporting to Mission Control WaitForWorkItemCompletion: true # optional -- true will make the task wait until work items have been completed and fail the build if work items fail. False is "fire and forget." diff --git a/global.json b/global.json index 12014da6b43..4898761a3cc 100644 --- a/global.json +++ b/global.json @@ -12,8 +12,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20474.4", - "Microsoft.DotNet.Helix.Sdk": "5.0.0-beta.20474.4" + "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20506.7", + "Microsoft.DotNet.Helix.Sdk": "5.0.0-beta.20506.7" }, "sdk": { "version": "5.0.100-rc.1.20452.10" From 85bea9185baf7e4cd6baf5e2b480a8d073f6f94c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 21:41:20 +0000 Subject: [PATCH 22/56] [release/5.0] Update dependencies from dotnet/winforms (#3615) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20506.3 to 5.0.0-rtm.20508.2 (parent: Microsoft.Private.Winforms) --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 72b36fa7ea1..cc8273f7119 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - 9895c14a54241c0e02b1c9b7fd15dd9981e8c08a + 9719f12d2f8433f6f659036770f8320adf99cd5e - + https://github.com/dotnet/winforms - 9895c14a54241c0e02b1c9b7fd15dd9981e8c08a + 9719f12d2f8433f6f659036770f8320adf99cd5e - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int 11999f719d5c0525c86cd7b79ca2d4f4965687bd - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 - + https://github.com/dotnet/runtime - 25ef70b80b5a73ff103ce1615cbd4f6b3e8ef917 + 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 diff --git a/eng/Versions.props b/eng/Versions.props index b8a4fef182d..7c7f8b655d6 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 - 5.0.0-rtm.20506.2 + 5.0.0-rtm.20508.6 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 - 5.0.0-rtm.20506.3 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.2 From 534e15e57139526330e569e23996268a9b539a97 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 22:09:08 +0000 Subject: [PATCH 23/56] Update dependencies from https://github.com/dotnet/winforms build 20201008.7 (#3619) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20508.2 to 5.0.0-rtm.20508.4 (parent: Microsoft.Private.Winforms) --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index cc8273f7119..cea87a730e1 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - 9719f12d2f8433f6f659036770f8320adf99cd5e + b6eea163e22c07fe18b304779c61646ceb8172ad - + https://github.com/dotnet/winforms - 9719f12d2f8433f6f659036770f8320adf99cd5e + b6eea163e22c07fe18b304779c61646ceb8172ad - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int 11999f719d5c0525c86cd7b79ca2d4f4965687bd - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 - + https://github.com/dotnet/runtime - 62eb1b22c608957b3fa701d53bc9619d6f6c49f7 + d414588297812f1f42a8eb2e41f3ad6847573625 diff --git a/eng/Versions.props b/eng/Versions.props index 7c7f8b655d6..ce1e22ff5be 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.6 + 5.0.0-rtm.20508.7 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 - 5.0.0-rtm.20508.2 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.4 From 3f2f3649f695bb54299d476eb300508e0b26fd01 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 9 Oct 2020 02:21:57 +0000 Subject: [PATCH 24/56] Update dependencies from https://github.com/dotnet/winforms build 20201008.8 (#3620) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20508.4 to 5.0.0-rtm.20508.7 (parent: Microsoft.Private.Winforms) --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index cea87a730e1..20ed46ee4dd 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - b6eea163e22c07fe18b304779c61646ceb8172ad + 85390ba5969f02854f92c3c79d7c54729a672482 - + https://github.com/dotnet/winforms - b6eea163e22c07fe18b304779c61646ceb8172ad + 85390ba5969f02854f92c3c79d7c54729a672482 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int 11999f719d5c0525c86cd7b79ca2d4f4965687bd - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 - + https://github.com/dotnet/runtime - d414588297812f1f42a8eb2e41f3ad6847573625 + 2b27be1af99883d5dcf3b3dfae2fead71b405998 diff --git a/eng/Versions.props b/eng/Versions.props index ce1e22ff5be..2696319ac71 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.8 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 - 5.0.0-rtm.20508.4 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.7 From de7e5a3101fe0fe0167334089210d9fd43d47f93 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 9 Oct 2020 09:58:09 +0000 Subject: [PATCH 25/56] Update dependencies from https://github.com/dotnet/winforms build 20201009.1 (#3621) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20508.7 to 5.0.0-rtm.20508.10 (parent: Microsoft.Private.Winforms) --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 20ed46ee4dd..f0c902a438b 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - 85390ba5969f02854f92c3c79d7c54729a672482 + 12aea529e316d2beae03fc0b705ca79619328a0f - + https://github.com/dotnet/winforms - 85390ba5969f02854f92c3c79d7c54729a672482 + 12aea529e316d2beae03fc0b705ca79619328a0f - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int 11999f719d5c0525c86cd7b79ca2d4f4965687bd - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 - + https://github.com/dotnet/runtime - 2b27be1af99883d5dcf3b3dfae2fead71b405998 + 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 diff --git a/eng/Versions.props b/eng/Versions.props index 2696319ac71..b56791df532 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.8 + 5.0.0-rtm.20509.1 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 - 5.0.0-rtm.20508.7 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 + 5.0.0-rtm.20508.10 From c7208535a0e734fcd62384d20fab5bd07a7fa0fc Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Fri, 9 Oct 2020 22:41:45 +0000 Subject: [PATCH 26/56] Update dependencies from https://github.com/dotnet/winforms build 20201009.3 (#3622) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20508.10 to 5.0.0-rtm.20509.6 (parent: Microsoft.Private.Winforms) --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index f0c902a438b..358f0cd3a7b 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - 12aea529e316d2beae03fc0b705ca79619328a0f + bf00fc399a3b3f11088934d3c8cc30cd397abcee - + https://github.com/dotnet/winforms - 12aea529e316d2beae03fc0b705ca79619328a0f + bf00fc399a3b3f11088934d3c8cc30cd397abcee - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int 11999f719d5c0525c86cd7b79ca2d4f4965687bd - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 - + https://github.com/dotnet/runtime - 07a28b64b5f43f45f1d55c3a817809e2d5b834f0 + cca8c883475d4821c9af1f7093e7af6146f1b4a3 diff --git a/eng/Versions.props b/eng/Versions.props index b56791df532..fd7680006da 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.1 + 5.0.0-rtm.20509.3 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 - 5.0.0-rtm.20508.10 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 + 5.0.0-rtm.20509.6 From 847a413284b297c7f0ec7d0f2f111db4595b4ffe Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Sun, 11 Oct 2020 19:36:46 +0000 Subject: [PATCH 27/56] Update dependencies from https://github.com/dotnet/winforms build 20201011.1 (#3629) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20509.6 to 5.0.0-rtm.20510.7 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0-rtm.20509.6 to 5.0.0 (parent: Microsoft.Private.Winforms) --- NuGet.config | 5 +++ eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 3 files changed, 70 insertions(+), 65 deletions(-) diff --git a/NuGet.config b/NuGet.config index 0c1f3e64f67..3cac378fc9e 100644 --- a/NuGet.config +++ b/NuGet.config @@ -3,6 +3,11 @@ + + + + + diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 358f0cd3a7b..849835e5bba 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - bf00fc399a3b3f11088934d3c8cc30cd397abcee + 21426e3b1d52389e1ecee9bd2a2674121f3fb93c - + https://github.com/dotnet/winforms - bf00fc399a3b3f11088934d3c8cc30cd397abcee + 21426e3b1d52389e1ecee9bd2a2674121f3fb93c - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int 11999f719d5c0525c86cd7b79ca2d4f4965687bd - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://github.com/dotnet/runtime - cca8c883475d4821c9af1f7093e7af6146f1b4a3 + 9e4481de8a9dc108b246148745df00e3f4ba7f8f diff --git a/eng/Versions.props b/eng/Versions.props index fd7680006da..87ef01e154b 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -3,42 +3,42 @@ 5.0.0 rtm - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 + 5.0.0 + 5.0.0 - 5.0.0-rtm.20509.3 + 5.0.0-rtm.20511.1 5.0.0-alpha1.19562.1 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 + 5.0.0 + 5.0.0 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 + 5.0.0-rtm.20510.7 + 5.0.0 + 5.0.0 + 5.0.0 + 5.0.0 + 5.0.0 + 5.0.0 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 + 5.0.0 + 5.0.0 + 5.0.0 + 5.0.0 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 - 5.0.0-rtm.20509.6 + 5.0.0 + 5.0.0 + 5.0.0 + 5.0.0 + 5.0.0 From b540d98fe45e61f195e9135e5436b0a3b40c8dd7 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Mon, 12 Oct 2020 19:30:35 +0000 Subject: [PATCH 28/56] Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int build 20201012.2 (#3636) [release/5.0] Update dependencies from dnceng/internal/dotnet-wpf-int --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 849835e5bba..97345d06db1 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -65,9 +65,9 @@ https://github.com/dotnet/runtime 9e4481de8a9dc108b246148745df00e3f4ba7f8f - + https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int - 11999f719d5c0525c86cd7b79ca2d4f4965687bd + ed62575cb0a325b9028eddc675a05045762ec24c https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 87ef01e154b..354e6b87012 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -97,6 +97,6 @@ System.Reflection.MetadataLoadContext - 5.0.0-rtm.20508.5 + 5.0.0-rtm.20512.2 From 3ede9e2f738670c504861499c6c8d2abc1bbe4e2 Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Mon, 12 Oct 2020 15:58:25 -0700 Subject: [PATCH 29/56] Revert "Merge pull request #3542 from dotnet/rc2-askmode-BaseIntermediateOutputPath" This reverts commit 3d4e91cb5b3888597c1f60eca347217a9bde1596, reversing changes made to ab840c4778badb5ce6b80e99c86a7874242c700e. --- .../Internal/MarkupCompiler/MarkupCompiler.cs | 18 +- .../Internal/MarkupCompiler/PathInternal.cs | 382 ------------------ .../PresentationBuildTasks.csproj | 2 - 3 files changed, 13 insertions(+), 389 deletions(-) delete mode 100644 src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs index a2dce6f3559..8adf6cf0664 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/MarkupCompiler.cs @@ -1575,11 +1575,19 @@ private string ParentFolderPrefix { get { -#if NETFX - return PathInternal.GetRelativePath(TargetPath, SourceFileInfo.SourcePath, StringComparison.OrdinalIgnoreCase); -#else - return Path.GetRelativePath(TargetPath, SourceFileInfo.SourcePath); -#endif + string parentFolderPrefix = string.Empty; + if (TargetPath.StartsWith(SourceFileInfo.SourcePath, StringComparison.OrdinalIgnoreCase)) + { + string relPath = TargetPath.Substring(SourceFileInfo.SourcePath.Length); + relPath += SourceFileInfo.RelativeSourceFilePath; + string[] dirs = relPath.Split(new Char[] { Path.DirectorySeparatorChar }); + for (int i = 1; i < dirs.Length; i++) + { + parentFolderPrefix += PARENTFOLDER; + } + } + + return parentFolderPrefix; } } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs deleted file mode 100644 index 661aa18714e..00000000000 --- a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/MS/Internal/MarkupCompiler/PathInternal.cs +++ /dev/null @@ -1,382 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. -// See the LICENSE file in the project root for more information. - -//--------------------------------------------------------------------------- -// -// Description: -// Returns a relative path from one path to another. -// -// Paths are resolved by calling the GetFullPath method before calculating -// the difference. The method uses the default file path comparison for the -// current platform (StringComparison.OrdinalIgnoreCase for Windows.) -// -//--------------------------------------------------------------------------- - -#pragma warning disable 1634, 1691 - -using System; -using System.Xml; -using System.IO; -using System.Text; -using System.Reflection; -using System.Globalization; -using System.ComponentModel; -using System.Security.Cryptography; - -using System.CodeDom; -using System.CodeDom.Compiler; -using System.Collections; -using System.Collections.Generic; -using System.ComponentModel.Design.Serialization; - -using System.Diagnostics; -using System.Diagnostics.CodeAnalysis; - -using System.Threading; -using MS.Internal.Markup; -using MS.Internal.Tasks; -using MS.Utility; // for SR -using Microsoft.Build.Utilities; -using Microsoft.Build.Tasks.Windows; -using System.Runtime.CompilerServices; - -namespace MS.Internal -{ - internal sealed class PathInternal - { - internal static string GetRelativePath(string relativeTo, string path, StringComparison comparisonType) - { - if (relativeTo == null) - throw new ArgumentNullException(nameof(relativeTo)); - - if (PathInternal.IsEffectivelyEmpty(relativeTo.AsSpan())) - throw new ArgumentException(nameof(relativeTo)); - - if (path == null) - throw new ArgumentNullException(nameof(path)); - - if (PathInternal.IsEffectivelyEmpty(path.AsSpan())) - throw new ArgumentException(nameof(path)); - - Debug.Assert(comparisonType == StringComparison.Ordinal || comparisonType == StringComparison.OrdinalIgnoreCase); - - relativeTo = Path.GetFullPath(relativeTo); - path = Path.GetFullPath(path); - - // Need to check if the roots are different- if they are we need to return the "to" path. - if (!PathInternal.AreRootsEqual(relativeTo, path, comparisonType)) - return path; - - int commonLength = PathInternal.GetCommonPathLength(relativeTo, path, ignoreCase: comparisonType == StringComparison.OrdinalIgnoreCase); - - // If there is nothing in common they can't share the same root, return the "to" path as is. - if (commonLength == 0) - return path; - - // Trailing separators aren't significant for comparison - int relativeToLength = relativeTo.Length; - if (DoesEndInDirectorySeparator(relativeTo.AsSpan())) - relativeToLength--; - - bool pathEndsInSeparator = DoesEndInDirectorySeparator(path.AsSpan()); - int pathLength = path.Length; - if (pathEndsInSeparator) - pathLength--; - - // If we have effectively the same path, return "." - if (relativeToLength == pathLength && commonLength >= relativeToLength) return CurrentDir.ToString(); - - // We have the same root, we need to calculate the difference now using the - // common Length and Segment count past the length. - // - // Some examples: - // - // C:\Foo C:\Bar L3, S1 -> ..\Bar - // C:\Foo C:\Foo\Bar L6, S0 -> Bar - // C:\Foo\Bar C:\Bar\Bar L3, S2 -> ..\..\Bar\Bar - // C:\Foo\Foo C:\Foo\Bar L7, S1 -> ..\Bar - - var sb = new StringBuilder(); - - // Add parent segments for segments past the common on the "from" path - if (commonLength < relativeToLength) - { - sb.Append(ParentDir); - - for (int i = commonLength + 1; i < relativeToLength; i++) - { - if (PathInternal.IsDirectorySeparator(relativeTo[i])) - { - sb.Append(Path.DirectorySeparatorChar); - sb.Append(ParentDir); - } - } - } - else if (PathInternal.IsDirectorySeparator(path[commonLength])) - { - // No parent segments and we need to eat the initial separator - // (C:\Foo C:\Foo\Bar case) - commonLength++; - } - - // Now add the rest of the "to" path, adding back the trailing separator - int differenceLength = pathLength - commonLength; - if (pathEndsInSeparator) - differenceLength++; - - if (differenceLength > 0) - { - if (sb.Length > 0) - { - sb.Append(Path.DirectorySeparatorChar); - } - - sb.Append(path, commonLength, differenceLength); - } - - return sb.ToString(); - } - - /// - /// True if the given character is a directory separator. - /// - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsDirectorySeparator(char c) - { - return c == Path.DirectorySeparatorChar || c == Path.AltDirectorySeparatorChar; - } - - /// - /// Get the common path length from the start of the string. - /// - internal static int GetCommonPathLength(string first, string second, bool ignoreCase) - { - int commonChars = EqualStartingCharacterCount(first, second, ignoreCase); - - // If nothing matches - if (commonChars == 0) - return commonChars; - - // Or we're a full string and equal length or match to a separator - if (commonChars == first.Length - && (commonChars == second.Length || IsDirectorySeparator(second[commonChars]))) - return commonChars; - - if (commonChars == second.Length && IsDirectorySeparator(first[commonChars])) - return commonChars; - - // It's possible we matched somewhere in the middle of a segment e.g. C:\Foodie and C:\Foobar. - while (commonChars > 0 && !IsDirectorySeparator(first[commonChars - 1])) - commonChars--; - - return commonChars; - } - - /// - /// Returns true if the two paths have the same root - /// - internal static bool AreRootsEqual(string first, string second, StringComparison comparisonType) - { - int firstRootLength = GetRootLength(first.AsSpan()); - int secondRootLength = GetRootLength(second.AsSpan()); - - return firstRootLength == secondRootLength - && string.Compare( - strA: first, - indexA: 0, - strB: second, - indexB: 0, - length: firstRootLength, - comparisonType: comparisonType) == 0; - } - - /// - /// Returns true if the path is effectively empty for the current OS. - /// For unix, this is empty or null. For Windows, this is empty, null, or - /// just spaces ((char)32). - /// - internal static bool IsEffectivelyEmpty(ReadOnlySpan path) - { - if (path.IsEmpty) - return true; - - foreach (char c in path) - { - if (c != ' ') - return false; - } - return true; - } - - - /// - /// Gets the length of the root of the path (drive, share, etc.). - /// - internal static int GetRootLength(ReadOnlySpan path) - { - int pathLength = path.Length; - int i = 0; - - bool deviceSyntax = IsDevice(path); - bool deviceUnc = deviceSyntax && IsDeviceUNC(path); - - if ((!deviceSyntax || deviceUnc) && pathLength > 0 && IsDirectorySeparator(path[0])) - { - // UNC or simple rooted path (e.g. "\foo", NOT "\\?\C:\foo") - if (deviceUnc || (pathLength > 1 && IsDirectorySeparator(path[1]))) - { - // UNC (\\?\UNC\ or \\), scan past server\share - - // Start past the prefix ("\\" or "\\?\UNC\") - i = deviceUnc ? UncExtendedPrefixLength : UncPrefixLength; - - // Skip two separators at most - int n = 2; - while (i < pathLength && (!IsDirectorySeparator(path[i]) || --n > 0)) - i++; - } - else - { - // Current drive rooted (e.g. "\foo") - i = 1; - } - } - else if (deviceSyntax) - { - // Device path (e.g. "\\?\.", "\\.\") - // Skip any characters following the prefix that aren't a separator - i = DevicePrefixLength; - while (i < pathLength && !IsDirectorySeparator(path[i])) - i++; - - // If there is another separator take it, as long as we have had at least one - // non-separator after the prefix (e.g. don't take "\\?\\", but take "\\?\a\") - if (i < pathLength && i > DevicePrefixLength && IsDirectorySeparator(path[i])) - i++; - } - else if (pathLength >= 2 - && path[1] == VolumeSeparatorChar - && IsValidDriveChar(path[0])) - { - // Valid drive specified path ("C:", "D:", etc.) - i = 2; - - // If the colon is followed by a directory separator, move past it (e.g "C:\") - if (pathLength > 2 && IsDirectorySeparator(path[2])) - i++; - } - - return i; - } - - /// - /// Gets the count of common characters from the left optionally ignoring case - /// - internal static unsafe int EqualStartingCharacterCount(string first, string second, bool ignoreCase) - { - if (string.IsNullOrEmpty(first) || string.IsNullOrEmpty(second)) return 0; - - int commonChars = 0; - - fixed (char* f = first) - fixed (char* s = second) - { - char* l = f; - char* r = s; - char* leftEnd = l + first.Length; - char* rightEnd = r + second.Length; - - while (l != leftEnd && r != rightEnd - && (*l == *r || (ignoreCase && char.ToUpperInvariant((*l)) == char.ToUpperInvariant((*r))))) - { - commonChars++; - l++; - r++; - } - } - - return commonChars; - } - - /// - /// Returns true if the path uses any of the DOS device path syntaxes. ("\\.\", "\\?\", or "\??\") - /// - internal static bool IsDevice(ReadOnlySpan path) - { - // If the path begins with any two separators is will be recognized and normalized and prepped with - // "\??\" for internal usage correctly. "\??\" is recognized and handled, "/??/" is not. - return IsExtended(path) - || - ( - path.Length >= DevicePrefixLength - && IsDirectorySeparator(path[0]) - && IsDirectorySeparator(path[1]) - && (path[2] == '.' || path[2] == '?') - && IsDirectorySeparator(path[3]) - ); - } - - /// - /// Returns true if the path is a device UNC (\\?\UNC\, \\.\UNC\) - /// - internal static bool IsDeviceUNC(ReadOnlySpan path) - { - return path.Length >= UncExtendedPrefixLength - && IsDevice(path) - && IsDirectorySeparator(path[7]) - && path[4] == 'U' - && path[5] == 'N' - && path[6] == 'C'; - } - - /// - /// Returns true if the given character is a valid drive letter - /// - internal static bool IsValidDriveChar(char value) - { - return ((value >= 'A' && value <= 'Z') || (value >= 'a' && value <= 'z')); - } - - /// - /// Returns true if the path uses the canonical form of extended syntax ("\\?\" or "\??\"). If the - /// path matches exactly (cannot use alternate directory separators) Windows will skip normalization - /// and path length checks. - /// - internal static bool IsExtended(ReadOnlySpan path) - { - // While paths like "//?/C:/" will work, they're treated the same as "\\.\" paths. - // Skipping of normalization will *only* occur if back slashes ('\') are used. - return path.Length >= DevicePrefixLength - && path[0] == '\\' - && (path[1] == '\\' || path[1] == '?') - && path[2] == '?' - && path[3] == '\\'; - } - - /// - /// Returns true if the path ends in a directory separator. - /// - public static bool DoesEndInDirectorySeparator(ReadOnlySpan path) - => path.Length > 0 && PathInternal.IsDirectorySeparator(path[path.Length - 1]); - - /// - /// Returns true if the path ends in a directory separator. - /// - public static bool DoesEndInDirectorySeparator(string path) - => path != null && path.Length > 0 && PathInternal.IsDirectorySeparator(path[path.Length - 1]); - - internal const char VolumeSeparatorChar = ':'; - // \\?\UNC\, \\.\UNC\ - internal const int UncExtendedPrefixLength = 8; - // \\?\, \\.\, \??\ - internal const int DevicePrefixLength = 4; - // \\ - internal const int UncPrefixLength = 2; - // ".." - internal const string ParentDir = ".."; - // '.' - internal const char CurrentDir = '.'; - } -} - diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj index 38b33730d47..9946655962a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj +++ b/src/Microsoft.DotNet.Wpf/src/PresentationBuildTasks/PresentationBuildTasks.csproj @@ -27,7 +27,6 @@ true true AnyCPU;x64 - true @@ -279,7 +278,6 @@ - From 1b26bef8f3d5eaf91294717db041a9334dac315a Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 13 Oct 2020 00:57:29 +0000 Subject: [PATCH 30/56] Update dependencies from https://github.com/dotnet/winforms build 20201012.1 (#3639) [release/5.0] Update dependencies from dotnet/winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 97345d06db1..d0f4fa24d5e 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - 21426e3b1d52389e1ecee9bd2a2674121f3fb93c + 03c6dd51d6bedd6c1d9c2cb6589d2117dfc75644 - + https://github.com/dotnet/winforms - 21426e3b1d52389e1ecee9bd2a2674121f3fb93c + 03c6dd51d6bedd6c1d9c2cb6589d2117dfc75644 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 354e6b87012..ea02f18b6f4 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -8,7 +8,7 @@ - 5.0.0-rtm.20511.1 + 5.0.0-rtm.20512.1 From f2577e008a475808c176d6aa56a4954a56f77926 Mon Sep 17 00:00:00 2001 From: Adam Yoblick Date: Tue, 13 Oct 2020 10:45:06 -0500 Subject: [PATCH 31/56] update intellisense version --- global.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/global.json b/global.json index 4898761a3cc..056f6b7e1e3 100644 --- a/global.json +++ b/global.json @@ -21,7 +21,7 @@ "native-tools": { "strawberry-perl": "5.28.1.1-1", "net-framework-48-ref-assemblies": "0.0.0.1", - "dotnet-api-docs_net5.0": "0.0.0.2", + "dotnet-api-docs_net5.0": "0.0.0.3", "net-framework-472-iltools": "0.0.0.1" } } From eb07a620edc2051b1ebc488e88f99dc1ac477c21 Mon Sep 17 00:00:00 2001 From: Adam Yoblick Date: Tue, 13 Oct 2020 11:08:27 -0500 Subject: [PATCH 32/56] missed a version --- eng/WpfArcadeSdk/tools/ReferenceAssembly.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets b/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets index b3256e55bd7..b9fcfbf2ceb 100644 --- a/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets +++ b/eng/WpfArcadeSdk/tools/ReferenceAssembly.targets @@ -46,7 +46,7 @@ Outputs="$(IntellisenseXmlDir)$(AssemblyName).xml"> - 0.0.0.2 + 0.0.0.3 - - - + diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d0f4fa24d5e..3a9dce4815a 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,37 +1,37 @@ - + https://github.com/dotnet/winforms - 03c6dd51d6bedd6c1d9c2cb6589d2117dfc75644 + 6898e42c5604298d2ae69b4a63866b7dfb518d76 - + https://github.com/dotnet/winforms - 03c6dd51d6bedd6c1d9c2cb6589d2117dfc75644 + 6898e42c5604298d2ae69b4a63866b7dfb518d76 https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/corefx @@ -39,31 +39,31 @@ https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int @@ -71,7 +71,7 @@ https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/coreclr @@ -79,27 +79,27 @@ https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c - + https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c https://github.com/dotnet/runtime - 9e4481de8a9dc108b246148745df00e3f4ba7f8f + b928f03ffb8684b476cdf5c46fb92561bfbdc23c diff --git a/eng/Versions.props b/eng/Versions.props index ea02f18b6f4..2b2a2f2918b 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -8,7 +8,7 @@ - 5.0.0-rtm.20512.1 + 5.0.0-rtm.20513.2 @@ -18,7 +18,7 @@ - 5.0.0-rtm.20510.7 + 5.0.0-rtm.20512.4 5.0.0 5.0.0 5.0.0 From 5800b00ee9595fd62006b75e62faadb1784f58a0 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 13 Oct 2020 20:03:23 +0000 Subject: [PATCH 35/56] Update dependencies from https://github.com/dotnet/winforms build 20201013.5 (#3644) [release/5.0] Update dependencies from dotnet/winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 3a9dce4815a..f755da7f85b 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - 6898e42c5604298d2ae69b4a63866b7dfb518d76 + dc6ee51d08db4728f0580e357b56c3a3fcb3747d - + https://github.com/dotnet/winforms - 6898e42c5604298d2ae69b4a63866b7dfb518d76 + dc6ee51d08db4728f0580e357b56c3a3fcb3747d https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 2b2a2f2918b..57b734bb4bf 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -8,7 +8,7 @@ - 5.0.0-rtm.20513.2 + 5.0.0-rtm.20513.5 From 4f8e90d4ec473aaaffa1073ed14b7b444273a7b7 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2020 05:08:15 +0000 Subject: [PATCH 36/56] Update dependencies from https://github.com/dotnet/winforms build 20201013.8 (#3645) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20512.4 to 5.0.0-rtm.20513.8 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) --- NuGet.config | 2 +- eng/Version.Details.xml | 50 ++++++++++++++++++++--------------------- eng/Versions.props | 4 ++-- 3 files changed, 28 insertions(+), 28 deletions(-) diff --git a/NuGet.config b/NuGet.config index 5ea4e9d8fa1..238fffb6eb2 100644 --- a/NuGet.config +++ b/NuGet.config @@ -4,7 +4,7 @@ - + diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index f755da7f85b..12a00db3ef1 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,37 +1,37 @@ - + https://github.com/dotnet/winforms - dc6ee51d08db4728f0580e357b56c3a3fcb3747d + 8bdd6c7dd3de9186ad5d246f343e2b6097dced12 - + https://github.com/dotnet/winforms - dc6ee51d08db4728f0580e357b56c3a3fcb3747d + 8bdd6c7dd3de9186ad5d246f343e2b6097dced12 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/corefx @@ -39,31 +39,31 @@ https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int @@ -71,7 +71,7 @@ https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/coreclr @@ -79,27 +79,27 @@ https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 - + https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 https://github.com/dotnet/runtime - b928f03ffb8684b476cdf5c46fb92561bfbdc23c + be1203493665b2e916bfaf81277275c33345abe2 diff --git a/eng/Versions.props b/eng/Versions.props index 57b734bb4bf..cab5a252bae 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -8,7 +8,7 @@ - 5.0.0-rtm.20513.5 + 5.0.0-rtm.20513.8 @@ -18,7 +18,7 @@ - 5.0.0-rtm.20512.4 + 5.0.0-rtm.20513.8 5.0.0 5.0.0 5.0.0 From f352442df5c3762c20df33e134cf1cb194745e15 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Wed, 14 Oct 2020 16:14:30 +0000 Subject: [PATCH 37/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.1 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20514.1 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index c18128a1171..d82b22c1ed2 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - 6b20c21512a696a383a673e1411793846610000c + 9166f2d9b3f6fb067024c0841c833436a58120e4 - + https://github.com/dotnet/winforms - 6b20c21512a696a383a673e1411793846610000c + 9166f2d9b3f6fb067024c0841c833436a58120e4 - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int 1045306aa2ccc7a08f14b71cbcaa49f40427913f - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - e6b9b48f3466c25e17509137e3931229f406b425 + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - 1dfd9438149f74ae11918a7b0709b8d58c61443f + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://github.com/dotnet/runtime - 1dfd9438149f74ae11918a7b0709b8d58c61443f + eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e diff --git a/eng/Versions.props b/eng/Versions.props index 3fbdc9a96fe..156ca1819e5 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -4,42 +4,42 @@ 6.0.0 alpha 1 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20466.4 + 6.0.0-alpha.1.20514.1 5.0.0-alpha1.19562.1 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20428.2 - 5.0.0-rc.1.20428.3 - 5.0.0-rc.1.20428.3 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 - 6.0.0-alpha.1.20428.2 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20513.9 From d33db7f88b9ed7a7ac39fd61b25e532ded2be08c Mon Sep 17 00:00:00 2001 From: Matt Mitchell Date: Wed, 14 Oct 2020 10:25:19 -0700 Subject: [PATCH 38/56] Update arcade --- eng/Version.Details.xml | 20 +- eng/Versions.props | 6 +- eng/common/performance/performance-setup.sh | 1 + .../post-build/sourcelink-validation.ps1 | 15 +- eng/common/templates/job/job.yml | 12 +- .../templates/post-build/post-build.yml | 306 +++++++++--------- .../templates/steps/perf-send-to-helix.yml | 2 +- eng/common/templates/steps/send-to-helix.yml | 2 +- global.json | 8 +- 9 files changed, 194 insertions(+), 178 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d82b22c1ed2..60976848870 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -103,25 +103,25 @@ - + https://github.com/dotnet/arcade - bd918c64b786bdba42e895e4cb93603e5a2ca608 + f2f45f7a856fe4949735e574f7a0350bda48264f - + https://github.com/dotnet/arcade - bd918c64b786bdba42e895e4cb93603e5a2ca608 + f2f45f7a856fe4949735e574f7a0350bda48264f - + https://github.com/dotnet/arcade - bd918c64b786bdba42e895e4cb93603e5a2ca608 + f2f45f7a856fe4949735e574f7a0350bda48264f - + https://github.com/dotnet/arcade - bd918c64b786bdba42e895e4cb93603e5a2ca608 + f2f45f7a856fe4949735e574f7a0350bda48264f - + https://github.com/dotnet/arcade - bd918c64b786bdba42e895e4cb93603e5a2ca608 + f2f45f7a856fe4949735e574f7a0350bda48264f diff --git a/eng/Versions.props b/eng/Versions.props index 156ca1819e5..73bac57e1c7 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -43,9 +43,9 @@ - 5.0.0-beta.20464.13 - 5.0.0-beta.20464.13 - 5.0.0-beta.20464.13 + 6.0.0-beta.20509.12 + 6.0.0-beta.20509.12 + 6.0.0-beta.20509.12 diff --git a/eng/common/performance/performance-setup.sh b/eng/common/performance/performance-setup.sh index e0cb8044632..99d1b7bc1fc 100755 --- a/eng/common/performance/performance-setup.sh +++ b/eng/common/performance/performance-setup.sh @@ -210,6 +210,7 @@ if [[ "$wasm_runtime_loc" != "" ]]; then fi if [[ "$mono_dotnet" != "" ]] && [[ "$monointerpreter" == "true" ]]; then + configurations="$configurations LLVM=$llvm MonoInterpreter=$monointerpreter MonoAOT=$monoaot" extra_benchmark_dotnet_arguments="$extra_benchmark_dotnet_arguments --category-exclusion-filter NoInterpreter NoMono" fi diff --git a/eng/common/post-build/sourcelink-validation.ps1 b/eng/common/post-build/sourcelink-validation.ps1 index c7e7ae67d81..1728b742b3b 100644 --- a/eng/common/post-build/sourcelink-validation.ps1 +++ b/eng/common/post-build/sourcelink-validation.ps1 @@ -161,9 +161,12 @@ $ValidatePackage = { function CheckJobResult( $result, $packagePath, - [ref]$ValidationFailures) { - if ($jobResult.result -ne '0') { - Write-PipelineTelemetryError -Category 'SourceLink' -Message "$packagePath has broken SourceLink links." + [ref]$ValidationFailures, + [switch]$logErrors) { + if ($result -ne '0') { + if ($logError) { + Write-PipelineTelemetryError -Category 'SourceLink' -Message "$packagePath has broken SourceLink links." + } $ValidationFailures.Value++ } } @@ -228,16 +231,14 @@ function ValidateSourceLinkLinks { foreach ($Job in @(Get-Job -State 'Completed')) { $jobResult = Wait-Job -Id $Job.Id | Receive-Job - CheckJobResult $jobResult.result $jobResult.packagePath ([ref]$ValidationFailures) + CheckJobResult $jobResult.result $jobResult.packagePath ([ref]$ValidationFailures) -LogErrors Remove-Job -Id $Job.Id } } foreach ($Job in @(Get-Job)) { $jobResult = Wait-Job -Id $Job.Id | Receive-Job - if ($jobResult -ne '0') { - $ValidationFailures++ - } + CheckJobResult $jobResult.result $jobResult.packagePath ([ref]$ValidationFailures) Remove-Job -Id $Job.Id } if ($ValidationFailures -gt 0) { diff --git a/eng/common/templates/job/job.yml b/eng/common/templates/job/job.yml index e78ed9a1c6e..8b81a7e5143 100644 --- a/eng/common/templates/job/job.yml +++ b/eng/common/templates/job/job.yml @@ -204,7 +204,7 @@ jobs: - ${{ if eq(parameters.enablePublishTestResults, 'true') }}: - task: PublishTestResults@2 - displayName: Publish Test Results + displayName: Publish XUnit Test Results inputs: testResultsFormat: 'xUnit' testResultsFiles: '*.xml' @@ -213,6 +213,16 @@ jobs: mergeTestResults: ${{ parameters.mergeTestResults }} continueOnError: true condition: always() + - task: PublishTestResults@2 + displayName: Publish TRX Test Results + inputs: + testResultsFormat: 'VSTest' + testResultsFiles: '*.trx' + searchFolder: '$(Build.SourcesDirectory)/artifacts/TestResults/$(_BuildConfig)' + testRunTitle: ${{ coalesce(parameters.testRunTitle, parameters.name, '$(System.JobName)') }}-trx + mergeTestResults: ${{ parameters.mergeTestResults }} + continueOnError: true + condition: always() - ${{ if and(eq(parameters.enablePublishBuildAssets, true), ne(parameters.enablePublishUsingPipelines, 'true'), eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}: - task: CopyFiles@2 diff --git a/eng/common/templates/post-build/post-build.yml b/eng/common/templates/post-build/post-build.yml index 0854e489615..761fb1a29c3 100644 --- a/eng/common/templates/post-build/post-build.yml +++ b/eng/common/templates/post-build/post-build.yml @@ -67,176 +67,180 @@ parameters: VSMasterChannelId: 1012 stages: -- stage: Validate - dependsOn: ${{ parameters.validateDependsOn }} - displayName: Validate Build Assets - variables: - - template: common-variables.yml - jobs: - - template: setup-maestro-vars.yml - parameters: - BARBuildId: ${{ parameters.BARBuildId }} - PromoteToChannelIds: ${{ parameters.PromoteToChannelIds }} +- ${{ if or(and(le(parameters.publishingInfraVersion, 2), eq(parameters.inline, 'true')), eq( parameters.enableNugetValidation, 'true'), eq(parameters.enableSigningValidation, 'true'), eq(parameters.enableSourceLinkValidation, 'true'), eq(parameters.SDLValidationParameters.enable, 'true')) }}: + - stage: Validate + dependsOn: ${{ parameters.validateDependsOn }} + displayName: Validate Build Assets + variables: + - template: common-variables.yml + jobs: + - template: setup-maestro-vars.yml + parameters: + BARBuildId: ${{ parameters.BARBuildId }} + PromoteToChannelIds: ${{ parameters.PromoteToChannelIds }} + + - ${{ if and(le(parameters.publishingInfraVersion, 2), eq(parameters.inline, 'true')) }}: + - job: + displayName: Post-build Checks + dependsOn: setupMaestroVars + variables: + - name: TargetChannels + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.TargetChannels'] ] + pool: + vmImage: 'windows-2019' + steps: + - task: PowerShell@2 + displayName: Maestro Channels Consistency + inputs: + filePath: $(Build.SourcesDirectory)/eng/common/post-build/check-channel-consistency.ps1 + arguments: -PromoteToChannels "$(TargetChannels)" + -AvailableChannelIds ${{parameters.NetEngLatestChannelId}},${{parameters.NetEngValidationChannelId}},${{parameters.NetDev5ChannelId}},${{parameters.NetDev6ChannelId}},${{parameters.GeneralTestingChannelId}},${{parameters.NETCoreToolingDevChannelId}},${{parameters.NETCoreToolingReleaseChannelId}},${{parameters.NETInternalToolingChannelId}},${{parameters.NETCoreExperimentalChannelId}},${{parameters.NetEngServicesIntChannelId}},${{parameters.NetEngServicesProdChannelId}},${{parameters.Net5Preview8ChannelId}},${{parameters.Net5RC1ChannelId}},${{parameters.Net5RC2ChannelId}},${{parameters.NetCoreSDK313xxChannelId}},${{parameters.NetCoreSDK313xxInternalChannelId}},${{parameters.NetCoreSDK314xxChannelId}},${{parameters.NetCoreSDK314xxInternalChannelId}},${{parameters.VS166ChannelId}},${{parameters.VS167ChannelId}},${{parameters.VS168ChannelId}},${{parameters.VSMasterChannelId}} - - ${{ if and(le(parameters.publishingInfraVersion, 2), eq(parameters.inline, 'true')) }}: - job: - displayName: Post-build Checks + displayName: NuGet Validation dependsOn: setupMaestroVars - variables: - - name: TargetChannels - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.TargetChannels'] ] + condition: eq( ${{ parameters.enableNugetValidation }}, 'true') pool: vmImage: 'windows-2019' + variables: + - name: AzDOProjectName + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] + - name: AzDOPipelineId + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] + - name: AzDOBuildId + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] steps: + - task: DownloadBuildArtifacts@0 + displayName: Download Package Artifacts + inputs: + buildType: specific + buildVersionToDownload: specific + project: $(AzDOProjectName) + pipeline: $(AzDOPipelineId) + buildId: $(AzDOBuildId) + artifactName: PackageArtifacts + - task: PowerShell@2 - displayName: Maestro Channels Consistency + displayName: Validate inputs: - filePath: $(Build.SourcesDirectory)/eng/common/post-build/check-channel-consistency.ps1 - arguments: -PromoteToChannels "$(TargetChannels)" - -AvailableChannelIds ${{parameters.NetEngLatestChannelId}},${{parameters.NetEngValidationChannelId}},${{parameters.NetDev5ChannelId}},${{parameters.NetDev6ChannelId}},${{parameters.GeneralTestingChannelId}},${{parameters.NETCoreToolingDevChannelId}},${{parameters.NETCoreToolingReleaseChannelId}},${{parameters.NETInternalToolingChannelId}},${{parameters.NETCoreExperimentalChannelId}},${{parameters.NetEngServicesIntChannelId}},${{parameters.NetEngServicesProdChannelId}},${{parameters.Net5Preview8ChannelId}},${{parameters.Net5RC1ChannelId}},${{parameters.Net5RC2ChannelId}},${{parameters.NetCoreSDK313xxChannelId}},${{parameters.NetCoreSDK313xxInternalChannelId}},${{parameters.NetCoreSDK314xxChannelId}},${{parameters.NetCoreSDK314xxInternalChannelId}},${{parameters.VS166ChannelId}},${{parameters.VS167ChannelId}},${{parameters.VS168ChannelId}},${{parameters.VSMasterChannelId}} - - - job: - displayName: NuGet Validation - dependsOn: setupMaestroVars - condition: eq( ${{ parameters.enableNugetValidation }}, 'true') - pool: - vmImage: 'windows-2019' - variables: - - name: AzDOProjectName - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] - - name: AzDOPipelineId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] - - name: AzDOBuildId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] - steps: - - task: DownloadBuildArtifacts@0 - displayName: Download Package Artifacts - inputs: - buildType: specific - buildVersionToDownload: specific - project: $(AzDOProjectName) - pipeline: $(AzDOPipelineId) - buildId: $(AzDOBuildId) - artifactName: PackageArtifacts - - - task: PowerShell@2 - displayName: Validate - inputs: - filePath: $(Build.SourcesDirectory)/eng/common/post-build/nuget-validation.ps1 - arguments: -PackagesPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/ - -ToolDestinationPath $(Agent.BuildDirectory)/Extract/ - - - job: - displayName: Signing Validation - dependsOn: setupMaestroVars - condition: eq( ${{ parameters.enableSigningValidation }}, 'true') - variables: - - template: common-variables.yml - - name: AzDOProjectName - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] - - name: AzDOPipelineId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] - - name: AzDOBuildId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] - pool: - vmImage: 'windows-2019' - steps: - - ${{ if eq(parameters.useBuildManifest, true) }}: + filePath: $(Build.SourcesDirectory)/eng/common/post-build/nuget-validation.ps1 + arguments: -PackagesPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/ + -ToolDestinationPath $(Agent.BuildDirectory)/Extract/ + + - job: + displayName: Signing Validation + dependsOn: setupMaestroVars + condition: eq( ${{ parameters.enableSigningValidation }}, 'true') + variables: + - template: common-variables.yml + - name: AzDOProjectName + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] + - name: AzDOPipelineId + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] + - name: AzDOBuildId + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] + pool: + vmImage: 'windows-2019' + steps: + - ${{ if eq(parameters.useBuildManifest, true) }}: + - task: DownloadBuildArtifacts@0 + displayName: Download build manifest + inputs: + buildType: specific + buildVersionToDownload: specific + project: $(AzDOProjectName) + pipeline: $(AzDOPipelineId) + buildId: $(AzDOBuildId) + artifactName: BuildManifests - task: DownloadBuildArtifacts@0 - displayName: Download build manifest + displayName: Download Package Artifacts inputs: buildType: specific buildVersionToDownload: specific project: $(AzDOProjectName) pipeline: $(AzDOPipelineId) buildId: $(AzDOBuildId) - artifactName: BuildManifests - - task: DownloadBuildArtifacts@0 - displayName: Download Package Artifacts - inputs: - buildType: specific - buildVersionToDownload: specific - project: $(AzDOProjectName) - pipeline: $(AzDOPipelineId) - buildId: $(AzDOBuildId) - artifactName: PackageArtifacts - - # This is necessary whenever we want to publish/restore to an AzDO private feed - # Since sdk-task.ps1 tries to restore packages we need to do this authentication here - # otherwise it'll complain about accessing a private feed. - - task: NuGetAuthenticate@0 - displayName: 'Authenticate to AzDO Feeds' - - - task: PowerShell@2 - displayName: Enable cross-org publishing - inputs: - filePath: eng\common\enable-cross-org-publishing.ps1 - arguments: -token $(dn-bot-dnceng-artifact-feeds-rw) - - # Signing validation will optionally work with the buildmanifest file which is downloaded from - # Azure DevOps above. - - task: PowerShell@2 - displayName: Validate - inputs: - filePath: eng\common\sdk-task.ps1 - arguments: -task SigningValidation -restore -msbuildEngine vs - /p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts' - /p:SignCheckExclusionsFile='$(Build.SourcesDirectory)/eng/SignCheckExclusionsFile.txt' - ${{ parameters.signingValidationAdditionalParameters }} - - - template: ../steps/publish-logs.yml - parameters: - StageLabel: 'Validation' - JobLabel: 'Signing' - - - job: - displayName: SourceLink Validation - dependsOn: setupMaestroVars - condition: eq( ${{ parameters.enableSourceLinkValidation }}, 'true') - variables: - - template: common-variables.yml - - name: AzDOProjectName - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] - - name: AzDOPipelineId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] - - name: AzDOBuildId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] - pool: - vmImage: 'windows-2019' - steps: - - task: DownloadBuildArtifacts@0 - displayName: Download Blob Artifacts - inputs: - buildType: specific - buildVersionToDownload: specific - project: $(AzDOProjectName) - pipeline: $(AzDOPipelineId) - buildId: $(AzDOBuildId) - artifactName: BlobArtifacts - - - task: PowerShell@2 - displayName: Validate - inputs: - filePath: $(Build.SourcesDirectory)/eng/common/post-build/sourcelink-validation.ps1 - arguments: -InputPath $(Build.ArtifactStagingDirectory)/BlobArtifacts/ - -ExtractPath $(Agent.BuildDirectory)/Extract/ - -GHRepoName $(Build.Repository.Name) - -GHCommit $(Build.SourceVersion) - -SourcelinkCliVersion $(SourceLinkCLIVersion) - continueOnError: true - - - template: /eng/common/templates/job/execute-sdl.yml - parameters: - enable: ${{ parameters.SDLValidationParameters.enable }} + artifactName: PackageArtifacts + + # This is necessary whenever we want to publish/restore to an AzDO private feed + # Since sdk-task.ps1 tries to restore packages we need to do this authentication here + # otherwise it'll complain about accessing a private feed. + - task: NuGetAuthenticate@0 + displayName: 'Authenticate to AzDO Feeds' + + - task: PowerShell@2 + displayName: Enable cross-org publishing + inputs: + filePath: eng\common\enable-cross-org-publishing.ps1 + arguments: -token $(dn-bot-dnceng-artifact-feeds-rw) + + # Signing validation will optionally work with the buildmanifest file which is downloaded from + # Azure DevOps above. + - task: PowerShell@2 + displayName: Validate + inputs: + filePath: eng\common\sdk-task.ps1 + arguments: -task SigningValidation -restore -msbuildEngine vs + /p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts' + /p:SignCheckExclusionsFile='$(Build.SourcesDirectory)/eng/SignCheckExclusionsFile.txt' + ${{ parameters.signingValidationAdditionalParameters }} + + - template: ../steps/publish-logs.yml + parameters: + StageLabel: 'Validation' + JobLabel: 'Signing' + + - job: + displayName: SourceLink Validation dependsOn: setupMaestroVars - additionalParameters: ${{ parameters.SDLValidationParameters.params }} - continueOnError: ${{ parameters.SDLValidationParameters.continueOnError }} - artifactNames: ${{ parameters.SDLValidationParameters.artifactNames }} - downloadArtifacts: ${{ parameters.SDLValidationParameters.downloadArtifacts }} + condition: eq( ${{ parameters.enableSourceLinkValidation }}, 'true') + variables: + - template: common-variables.yml + - name: AzDOProjectName + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] + - name: AzDOPipelineId + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] + - name: AzDOBuildId + value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] + pool: + vmImage: 'windows-2019' + steps: + - task: DownloadBuildArtifacts@0 + displayName: Download Blob Artifacts + inputs: + buildType: specific + buildVersionToDownload: specific + project: $(AzDOProjectName) + pipeline: $(AzDOPipelineId) + buildId: $(AzDOBuildId) + artifactName: BlobArtifacts + + - task: PowerShell@2 + displayName: Validate + inputs: + filePath: $(Build.SourcesDirectory)/eng/common/post-build/sourcelink-validation.ps1 + arguments: -InputPath $(Build.ArtifactStagingDirectory)/BlobArtifacts/ + -ExtractPath $(Agent.BuildDirectory)/Extract/ + -GHRepoName $(Build.Repository.Name) + -GHCommit $(Build.SourceVersion) + -SourcelinkCliVersion $(SourceLinkCLIVersion) + continueOnError: true + + - template: /eng/common/templates/job/execute-sdl.yml + parameters: + enable: ${{ parameters.SDLValidationParameters.enable }} + dependsOn: setupMaestroVars + additionalParameters: ${{ parameters.SDLValidationParameters.params }} + continueOnError: ${{ parameters.SDLValidationParameters.continueOnError }} + artifactNames: ${{ parameters.SDLValidationParameters.artifactNames }} + downloadArtifacts: ${{ parameters.SDLValidationParameters.downloadArtifacts }} - ${{ if or(ge(parameters.publishingInfraVersion, 3), eq(parameters.inline, 'false')) }}: - stage: publish_using_darc - dependsOn: Validate + ${{ if or(eq(parameters.enableNugetValidation, 'true'), eq(parameters.enableSigningValidation, 'true'), eq(parameters.enableSourceLinkValidation, 'true'), eq(parameters.SDLValidationParameters.enable, 'true')) }}: + dependsOn: Validate + ${{ if and(ne(parameters.enableNugetValidation, 'true'), ne(parameters.enableSigningValidation, 'true'), ne(parameters.enableSourceLinkValidation, 'true'), ne(parameters.SDLValidationParameters.enable, 'true')) }}: + dependsOn: ${{ parameters.validateDependsOn }} displayName: Publish using Darc variables: - template: common-variables.yml diff --git a/eng/common/templates/steps/perf-send-to-helix.yml b/eng/common/templates/steps/perf-send-to-helix.yml index 8427de59cd1..a468e92ce44 100644 --- a/eng/common/templates/steps/perf-send-to-helix.yml +++ b/eng/common/templates/steps/perf-send-to-helix.yml @@ -11,7 +11,7 @@ parameters: WorkItemDirectory: '' # optional -- a payload directory to zip up and send to Helix; requires WorkItemCommand; incompatible with XUnitProjects CorrelationPayloadDirectory: '' # optional -- a directory to zip up and send to Helix as a correlation payload IncludeDotNetCli: false # optional -- true will download a version of the .NET CLI onto the Helix machine as a correlation payload; requires DotNetCliPackageType and DotNetCliVersion - DotNetCliPackageType: '' # optional -- either 'sdk' or 'runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases.json + DotNetCliPackageType: '' # optional -- either 'sdk', 'runtime' or 'aspnetcore-runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases.json DotNetCliVersion: '' # optional -- version of the CLI to send to Helix; based on this: https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases.json EnableXUnitReporter: false # optional -- true enables XUnit result reporting to Mission Control WaitForWorkItemCompletion: true # optional -- true will make the task wait until work items have been completed and fail the build if work items fail. False is "fire and forget." diff --git a/eng/common/templates/steps/send-to-helix.yml b/eng/common/templates/steps/send-to-helix.yml index 5eceb48725d..bb5f1a92938 100644 --- a/eng/common/templates/steps/send-to-helix.yml +++ b/eng/common/templates/steps/send-to-helix.yml @@ -18,7 +18,7 @@ parameters: XUnitRuntimeTargetFramework: '' # optional -- framework to use for the xUnit console runner XUnitRunnerVersion: '' # optional -- version of the xUnit nuget package you wish to use on Helix; required for XUnitProjects IncludeDotNetCli: false # optional -- true will download a version of the .NET CLI onto the Helix machine as a correlation payload; requires DotNetCliPackageType and DotNetCliVersion - DotNetCliPackageType: '' # optional -- either 'sdk' or 'runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json + DotNetCliPackageType: '' # optional -- either 'sdk', 'runtime' or 'aspnetcore-runtime'; determines whether the sdk or runtime will be sent to Helix; see https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json DotNetCliVersion: '' # optional -- version of the CLI to send to Helix; based on this: https://raw.githubusercontent.com/dotnet/core/master/release-notes/releases-index.json EnableXUnitReporter: false # optional -- true enables XUnit result reporting to Mission Control WaitForWorkItemCompletion: true # optional -- true will make the task wait until work items have been completed and fail the build if work items fail. False is "fire and forget." diff --git a/global.json b/global.json index 12014da6b43..23444a8f3e3 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "5.0.100-rc.1.20452.10", + "dotnet": "5.0.100-rc.2.20479.15", "runtimes": { "dotnet": [ "2.1.7", @@ -12,11 +12,11 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20474.4", - "Microsoft.DotNet.Helix.Sdk": "5.0.0-beta.20474.4" + "Microsoft.DotNet.Arcade.Sdk": "6.0.0-beta.20509.12", + "Microsoft.DotNet.Helix.Sdk": "6.0.0-beta.20509.12" }, "sdk": { - "version": "5.0.100-rc.1.20452.10" + "version": "5.0.100-rc.2.20479.15" }, "native-tools": { "strawberry-perl": "5.28.1.1-1", From ddeacc81fa62678366d76e45b80d1db17f12cdbb Mon Sep 17 00:00:00 2001 From: Matt Mitchell Date: Wed, 14 Oct 2020 10:30:13 -0700 Subject: [PATCH 39/56] Update wpf-int dependencies --- NuGet.config | 3 --- eng/Version.Details.xml | 4 ++-- eng/Versions.props | 2 +- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/NuGet.config b/NuGet.config index 11cf00ea9d5..5af5f5b2ea0 100644 --- a/NuGet.config +++ b/NuGet.config @@ -3,9 +3,6 @@ - - - diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 60976848870..9c2f51dcec2 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -65,9 +65,9 @@ https://github.com/dotnet/runtime eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e - + https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int - 1045306aa2ccc7a08f14b71cbcaa49f40427913f + c5bf2dd188aafead1580c817e297b02080a77a1a https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 73bac57e1c7..22ee076a76a 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,6 +98,6 @@ System.Reflection.MetadataLoadContext - 5.0.0-rc.2.20470.1 + 6.0.0-alpha.1.20514.2 From 8ac8fc327bf795b84c75408b1bf025d3f37ea36f Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2020 18:36:44 +0000 Subject: [PATCH 40/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.2 (#3648) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20513.8 to 5.0.0-rtm.20514.4 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) --- NuGet.config | 2 +- eng/Version.Details.xml | 50 ++++++++++++++++++++--------------------- eng/Versions.props | 4 ++-- 3 files changed, 28 insertions(+), 28 deletions(-) diff --git a/NuGet.config b/NuGet.config index 238fffb6eb2..ad7b258e22e 100644 --- a/NuGet.config +++ b/NuGet.config @@ -4,7 +4,7 @@ - + diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 12a00db3ef1..69c840aa4d9 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,37 +1,37 @@ - + https://github.com/dotnet/winforms - 8bdd6c7dd3de9186ad5d246f343e2b6097dced12 + d74c71316d28fd757c4a0d06efd822211d2bdecf - + https://github.com/dotnet/winforms - 8bdd6c7dd3de9186ad5d246f343e2b6097dced12 + d74c71316d28fd757c4a0d06efd822211d2bdecf https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/corefx @@ -39,31 +39,31 @@ https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int @@ -71,7 +71,7 @@ https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/coreclr @@ -79,27 +79,27 @@ https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 - + https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 https://github.com/dotnet/runtime - be1203493665b2e916bfaf81277275c33345abe2 + 78740beb2657e0aacc1691826656af2cafb7ddc4 diff --git a/eng/Versions.props b/eng/Versions.props index cab5a252bae..a5251394a54 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -8,7 +8,7 @@ - 5.0.0-rtm.20513.8 + 5.0.0-rtm.20514.2 @@ -18,7 +18,7 @@ - 5.0.0-rtm.20513.8 + 5.0.0-rtm.20514.4 5.0.0 5.0.0 5.0.0 From 6c4051a419a3ae406196fa0f6fe6f848439551f3 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2020 23:01:19 +0000 Subject: [PATCH 41/56] [release/5.0] Update dependencies from dotnet/arcade (#3635) [release/5.0] Update dependencies from dotnet/arcade - Replace null comparisons on non-nullable types that now cause compilation errors, due to the .NET SDK update. - PR feedback - PR feedback - Merge pull request #3649 from dotnet/nonnullablechecks Replace null comparisons on non-nullable types that now cause compilation errors, due to the .NET SDK update. --- eng/Version.Details.xml | 20 +++++++------- eng/Versions.props | 6 ++--- global.json | 8 +++--- .../System/Windows/Media/EllipseGeometry.cs | 3 --- .../Imaging/BitmapSourceSafeMILHandle.cs | 2 +- .../Windows/Media/Imaging/WriteableBitmap.cs | 9 ------- .../System/Windows/Media/LineGeometry.cs | 3 --- .../System/Windows/Media/RectangleGeometry.cs | 3 --- .../Windows/Media3D/GeneralTransform3DTo2D.cs | 16 +++++------ .../IO/Packaging/indexingfiltermarshaler.cs | 5 ++-- .../Internal/Printing/printdlgexmarshaler.cs | 2 +- .../MS/Internal/PtsHost/CellParaClient.cs | 2 +- .../Generated/WinRT/Marshalers.cs | 6 ++--- .../Peers/DateTimeAutomationPeer.cs | 4 --- .../System/Windows/Controls/Calendar.cs | 27 +++++++++---------- .../CalendarBlackoutDatesCollection.cs | 3 --- .../System/Windows/Controls/DataGridCell.cs | 2 +- .../Controls/Primitives/CalendarItem.cs | 2 -- .../Controls/SelectedDatesCollection.cs | 2 +- .../System/Windows/Data/BindingExpression.cs | 2 -- .../System/Windows/FrameworkElement.cs | 3 ++- .../System/Windows/Standard/NativeMethods.cs | 2 +- .../System/Windows/VisualStateManager.cs | 2 +- .../System/Windows/Window.cs | 2 +- .../src/Shared/MS/Win32/HwndSubclass.cs | 3 ++- .../RightsManagement/IssuanceLicense.cs | 4 +-- .../System/Windows/SplashScreen.cs | 2 +- 27 files changed, 57 insertions(+), 88 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 69c840aa4d9..69d69be71d6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -103,25 +103,25 @@ - + https://github.com/dotnet/arcade - ee39cd1573dbb8011f343e1037af51d4fc00a747 + 6813f5aa511a7a4498fa217a54219b5704a01f83 - + https://github.com/dotnet/arcade - ee39cd1573dbb8011f343e1037af51d4fc00a747 + 6813f5aa511a7a4498fa217a54219b5704a01f83 - + https://github.com/dotnet/arcade - ee39cd1573dbb8011f343e1037af51d4fc00a747 + 6813f5aa511a7a4498fa217a54219b5704a01f83 - + https://github.com/dotnet/arcade - ee39cd1573dbb8011f343e1037af51d4fc00a747 + 6813f5aa511a7a4498fa217a54219b5704a01f83 - + https://github.com/dotnet/arcade - ee39cd1573dbb8011f343e1037af51d4fc00a747 + 6813f5aa511a7a4498fa217a54219b5704a01f83 diff --git a/eng/Versions.props b/eng/Versions.props index a5251394a54..3e2d48176d8 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -42,9 +42,9 @@ - 5.0.0-beta.20506.7 - 5.0.0-beta.20506.7 - 5.0.0-beta.20506.7 + 5.0.0-beta.20510.1 + 5.0.0-beta.20510.1 + 5.0.0-beta.20510.1 diff --git a/global.json b/global.json index 4898761a3cc..d9fb12e0af9 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "5.0.100-rc.1.20452.10", + "dotnet": "5.0.100-rc.2.20479.15", "runtimes": { "dotnet": [ "2.1.7", @@ -12,11 +12,11 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20506.7", - "Microsoft.DotNet.Helix.Sdk": "5.0.0-beta.20506.7" + "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20510.1", + "Microsoft.DotNet.Helix.Sdk": "5.0.0-beta.20510.1" }, "sdk": { - "version": "5.0.100-rc.1.20452.10" + "version": "5.0.100-rc.2.20479.15" }, "native-tools": { "strawberry-perl": "5.28.1.1-1", diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs index 8d7c077800c..bc5224d6463 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs @@ -160,9 +160,6 @@ internal static Rect GetBoundsHelper(Pen pen, Matrix worldMatrix, Point center, { Rect rect; - Debug.Assert(worldMatrix != null); - Debug.Assert(geometryMatrix != null); - if ( (pen == null || pen.DoesNotContainGaps) && worldMatrix.IsIdentity && geometryMatrix.IsIdentity) { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs index 5a11194f1f4..0f53e6288bb 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs @@ -71,7 +71,7 @@ private static long ComputeEstimatedSize(IntPtr bitmapObject) { long estimatedSize = 0; - if (bitmapObject != null && bitmapObject != IntPtr.Zero) + if (bitmapObject != IntPtr.Zero) { IntPtr wicBitmap; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs index d3ae38311b2..3bc0e4ff449 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs @@ -85,15 +85,6 @@ BitmapPalette palette // Sanitize inputs // - if (pixelFormat == null) - { - // Backwards Compat: - // - // The original code would null-ref, but we choose to raise a - // better exception. - throw new ArgumentNullException("pixelFormat"); - } - if (pixelFormat.Palettized && palette == null) { throw new InvalidOperationException(SR.Get(SRID.Image_IndexedPixelFormatRequiresPalette)); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs index daa2c16a7e4..34c864211e5 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs @@ -107,9 +107,6 @@ internal override Rect GetBoundsInternal(Pen pen, Matrix worldMatrix, double tol internal static Rect GetBoundsHelper(Pen pen, Matrix worldMatrix, Point pt1, Point pt2, Matrix geometryMatrix, double tolerance, ToleranceType type) { - Debug.Assert(worldMatrix != null); - Debug.Assert(geometryMatrix != null); - if (pen == null && worldMatrix.IsIdentity && geometryMatrix.IsIdentity) { return new Rect(pt1, pt2); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs index a204c8fa2d2..3abf8d26275 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs @@ -190,9 +190,6 @@ internal static Rect GetBoundsHelper(Pen pen, Matrix worldMatrix, Rect rect, dou { Rect boundingRect; - Debug.Assert(worldMatrix != null); - Debug.Assert(geometryMatrix != null); - if (rect.IsEmpty) { boundingRect = Rect.Empty; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs index 48bb9135b85..3fc14575539 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs @@ -43,15 +43,13 @@ public bool TryTransform(Point3D inPoint, out Point result) result = new Point(); // project the point - if (_projectionTransform != null) - { Point3D projectedPoint = _projectionTransform.Transform(inPoint); - - if (_transformBetween2D != null) - { - result = _transformBetween2D.Transform(new Point(projectedPoint.X, projectedPoint.Y)); - success = true; - } - } + Point3D projectedPoint = _projectionTransform.Transform(inPoint); + + if (_transformBetween2D != null) + { + result = _transformBetween2D.Transform(new Point(projectedPoint.X, projectedPoint.Y)); + success = true; + } return success; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs index e8e6b15f34c..aaf0caaa619 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs @@ -215,8 +215,9 @@ internal static IntPtr MarshalPropVariant(Object obj) // allocate an unmanaged PROPVARIANT to return pNative = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(PROPVARIANT))); - // Per MSDN, AllocCoTaskMem never returns null. One can't be too careful, though. - Invariant.Assert(pNative != null); + + // Per MSDN, AllocCoTaskMem never returns null: check for IntPtr.Zero instead. + Invariant.Assert(pNative != IntPtr.Zero); // marshal the managed PROPVARIANT into the unmanaged block and return it Marshal.StructureToPtr(v, pNative, false); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs index 38f464a2a95..d5be8f8c31d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs @@ -628,7 +628,7 @@ IntPtr unmanagedBuffer } catch (Exception) { - if (unmanagedBuffer != null) + if (unmanagedBuffer != IntPtr.Zero) { FreeUnmanagedPrintDlgExStruct(unmanagedBuffer); unmanagedBuffer = IntPtr.Zero; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs index 14d44788f8c..4b643148c46 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs @@ -157,7 +157,7 @@ internal void FormatCellFinite(Size subpageSize, IntPtr breakRecordIn, bool isEm int dvrTopSpace; PTS.FSPAP fspap; - if(CellParagraph.StructuralCache.DtrList != null && breakRecordIn != null) + if(CellParagraph.StructuralCache.DtrList != null && breakRecordIn != IntPtr.Zero) { CellParagraph.InvalidateStructure(TextContainerHelper.GetCPFromElement(CellParagraph.StructuralCache.TextContainer, CellParagraph.Element, ElementEdge.BeforeStart)); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs index cf159ed3b72..ccbf13294a0 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs @@ -127,7 +127,7 @@ public void Dispose() marshaler?.Dispose(); } } - if (_array != null) + if (_array != IntPtr.Zero) { Marshal.FreeCoTaskMem(_array); } @@ -445,7 +445,7 @@ public void Dispose() Marshaler.DisposeMarshaler(marshaler); } } - if (_array != null) + if (_array != IntPtr.Zero) { Marshal.FreeCoTaskMem(_array); } @@ -627,7 +627,7 @@ public void Dispose() DisposeMarshaler(marshaler); } } - if (_array != null) + if (_array != IntPtr.Zero) { Marshal.FreeCoTaskMem(_array); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs index 10d71f9d44b..6ed7fd6a0fc 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs @@ -30,10 +30,6 @@ public sealed class DateTimeAutomationPeer : AutomationPeer, IGridItemProvider, internal DateTimeAutomationPeer(DateTime date, Calendar owningCalendar, CalendarMode buttonMode) : base() { - if (date == null) - { - throw new ArgumentNullException("date"); - } if (owningCalendar == null) { throw new ArgumentNullException("owningCalendar"); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs index 8b483986745..e7b7e7134c0 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs @@ -1380,23 +1380,20 @@ private void ProcessEndKey(bool shift) { case CalendarMode.Month: { - if (this.DisplayDate != null) - { - DateTime? selectedDate = new DateTime(this.DisplayDateInternal.Year, this.DisplayDateInternal.Month, 1); - - if (DateTimeHelper.CompareYearMonth(DateTime.MaxValue, selectedDate.Value) > 0) - { - // since DisplayDate is not equal to DateTime.MaxValue we are sure selectedDate is not null - selectedDate = DateTimeHelper.AddMonths(selectedDate.Value, 1).Value; - selectedDate = DateTimeHelper.AddDays(selectedDate.Value, -1).Value; - } - else - { - selectedDate = DateTime.MaxValue; - } + DateTime? selectedDate = new DateTime(this.DisplayDateInternal.Year, this.DisplayDateInternal.Month, 1); - ProcessSelection(shift, selectedDate); + if (DateTimeHelper.CompareYearMonth(DateTime.MaxValue, selectedDate.Value) > 0) + { + // since DisplayDate is not equal to DateTime.MaxValue we are sure selectedDate is not null + selectedDate = DateTimeHelper.AddMonths(selectedDate.Value, 1).Value; + selectedDate = DateTimeHelper.AddDays(selectedDate.Value, -1).Value; } + else + { + selectedDate = DateTime.MaxValue; + } + + ProcessSelection(shift, selectedDate); break; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs index 7d543ccc2e7..0f6c3b403a9 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs @@ -349,9 +349,6 @@ private bool IsValidThread() /// private CalendarDateRange GetContainingDateRange(DateTime date) { - if (date == null) - return null; - for (int i = 0; i < Count; i++) { if (DateTimeHelper.InRange(date, this[i])) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs index 6f55d34c8dc..6358bf00e7d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs @@ -278,7 +278,7 @@ internal void NotifyPropertyChanged(DependencyObject d, string propertyName, Dep { column.RefreshCellContent(this, propertyName); } - else if (e != null && e.Property != null) + else if (e.Property != null) { column.RefreshCellContent(this, e.Property.Name); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs index f19015c935c..29cc92bba9f 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs @@ -681,7 +681,6 @@ private void Cell_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) CalendarKeyboardHelper.GetMetaKeyState(out ctrl, out shift); DateTime selectedDate = (DateTime)b.DataContext; - Debug.Assert(selectedDate != null); switch (this.Owner.SelectionMode) { @@ -1303,7 +1302,6 @@ private void SetYearModeMonthButtons() if (this.Owner != null) { - Debug.Assert(this.Owner.DisplayDateInternal != null); childButton.HasSelectedDays = (DateTimeHelper.CompareYearMonth(day, this.Owner.DisplayDateInternal) == 0); if (DateTimeHelper.CompareYearMonth(day, this.Owner.DisplayDateStartInternal) < 0 || DateTimeHelper.CompareYearMonth(day, this.Owner.DisplayDateEndInternal) > 0) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs index a5c960137f8..969b696f89a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs @@ -278,7 +278,7 @@ protected override void SetItem(int index, DateTime item) } else { - if (item != null && DateTime.Compare(this[index], item) != 0 && Calendar.IsValidDateSelection(this._owner, item)) + if (DateTime.Compare(this[index], item) != 0 && Calendar.IsValidDateSelection(this._owner, item)) { removedItems.Add(this[index]); base.SetItem(index, item); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs index 2b25d922d5e..7ccbe125d62 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs @@ -220,8 +220,6 @@ internal override void OnPropertyInvalidation(DependencyObject d, DependencyProp { if (d == null) throw new ArgumentNullException("d"); - if (args == null) - throw new ArgumentNullException("args"); DependencyProperty dp = args.Property; if (dp == null) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs index bfd0d63d767..eb6beefb2ec 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs @@ -4589,7 +4589,8 @@ protected sealed override void ArrangeCore(Rect finalRect) // First, get clipped, transformed, unrounded size. if (useLayoutRounding) { - if (ltd != null && ltd.TransformedUnroundedDS != null) + // 'transformUnroundedDS' is a non-nullable value type and can never be null. + if (ltd != null) { transformedUnroundedDS = ltd.TransformedUnroundedDS; transformedUnroundedDS.Width = Math.Max(0, transformedUnroundedDS.Width - marginWidth); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs index fc19dd6d92e..1b65ea82a86 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs @@ -2797,7 +2797,7 @@ public static MONITORINFO GetMonitorInfo(IntPtr hMonitor) public static IntPtr GetStockObject(StockObject fnObject) { IntPtr retPtr = _GetStockObject(fnObject); - if (retPtr == null) + if (retPtr == IntPtr.Zero) { HRESULT.ThrowLastError(); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs index 6cfe7cd829b..7824e9107d7 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs @@ -408,7 +408,7 @@ private static Storyboard GenerateDynamicTransitionAnimations(FrameworkElement r if (transition != null) { - if (transition.GeneratedDuration != null) + if (transition.GeneratedDuration != DurationZero) { dynamic.Duration = transition.GeneratedDuration; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs index b5537ef5d49..d15232b2f15 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs @@ -6148,7 +6148,7 @@ private static object CoerceRenderTransform(DependencyObject d, object value) Transform renderTransformValue = (Transform)value; if ((value == null) || - (renderTransformValue != null && renderTransformValue.Value != null && renderTransformValue.Value.IsIdentity == true)) + (renderTransformValue != null && renderTransformValue.Value.IsIdentity == true)) { // setting this value is allowed. } diff --git a/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs b/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs index e9dc2e01ecc..3048eafdfa3 100644 --- a/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs +++ b/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs @@ -553,7 +553,8 @@ private bool UnhookWindowProc(bool force) //AvDebug.Assert(_gcHandle.IsAllocated, "External GC handle has not been allocated."); - if(null != _gcHandle) + // GCHandle is a non-nullable type. Check GCHandle.IsAllocated before calling Free(). + if(_gcHandle.IsAllocated) _gcHandle.Free(); return true; diff --git a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs index a7b7ab94970..79e579cbec8 100644 --- a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs +++ b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs @@ -180,8 +180,8 @@ private void Initialize( } } - // set metafata as required - if (contentId != null) + // set metadata as required + if (contentId != Guid.Empty) { hr = SafeNativeMethods.DRMSetMetaData( _issuanceLicenseHandle, diff --git a/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs b/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs index 0b895b3dee9..abbf7e8fa01 100644 --- a/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs +++ b/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs @@ -238,7 +238,7 @@ private object CloseInternal(Object fadeOutArg) // In the case where the developer has specified AutoClose=True and then calls // Close(non_zero_timespan) before the auto close operation is dispatched we begin // the fadeout immidiately and ignore the later call to close. - if (_dt != null || _hwnd == null) + if (_dt != null || _hwnd == IntPtr.Zero) { return BooleanBoxes.TrueBox; } From e025683457a8ad589de5268b2440146b8caaab40 Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Wed, 14 Oct 2020 13:30:03 -0700 Subject: [PATCH 42/56] Replace null comparisons on non-nullable types that now cause compilation errors, due to the .NET SDK update. --- .../System/Windows/Media/EllipseGeometry.cs | 3 -- .../Imaging/BitmapSourceSafeMILHandle.cs | 2 +- .../Windows/Media/Imaging/WriteableBitmap.cs | 9 ------ .../System/Windows/Media/LineGeometry.cs | 3 -- .../System/Windows/Media/RectangleGeometry.cs | 3 -- .../Windows/Media3D/GeneralTransform3DTo2D.cs | 16 +++++------ .../IO/Packaging/indexingfiltermarshaler.cs | 2 -- .../Internal/Printing/printdlgexmarshaler.cs | 2 +- .../MS/Internal/PtsHost/CellParaClient.cs | 2 +- .../Generated/WinRT/Marshalers.cs | 6 ++-- .../Peers/DateTimeAutomationPeer.cs | 5 +--- .../System/Windows/Controls/Calendar.cs | 28 +++++++++---------- .../CalendarBlackoutDatesCollection.cs | 4 +-- .../System/Windows/Controls/DataGridCell.cs | 4 ++- .../Controls/Primitives/CalendarItem.cs | 2 -- .../Controls/SelectedDatesCollection.cs | 2 +- .../System/Windows/Data/BindingExpression.cs | 5 ++-- .../System/Windows/FrameworkElement.cs | 3 +- .../System/Windows/Standard/NativeMethods.cs | 2 +- .../System/Windows/VisualStateManager.cs | 2 +- .../System/Windows/Window.cs | 3 +- .../src/Shared/MS/Win32/HwndSubclass.cs | 3 +- .../RightsManagement/IssuanceLicense.cs | 3 +- .../System/Windows/SplashScreen.cs | 2 +- 24 files changed, 46 insertions(+), 70 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs index 8d7c077800c..bc5224d6463 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/EllipseGeometry.cs @@ -160,9 +160,6 @@ internal static Rect GetBoundsHelper(Pen pen, Matrix worldMatrix, Point center, { Rect rect; - Debug.Assert(worldMatrix != null); - Debug.Assert(geometryMatrix != null); - if ( (pen == null || pen.DoesNotContainGaps) && worldMatrix.IsIdentity && geometryMatrix.IsIdentity) { diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs index 5a11194f1f4..0f53e6288bb 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/BitmapSourceSafeMILHandle.cs @@ -71,7 +71,7 @@ private static long ComputeEstimatedSize(IntPtr bitmapObject) { long estimatedSize = 0; - if (bitmapObject != null && bitmapObject != IntPtr.Zero) + if (bitmapObject != IntPtr.Zero) { IntPtr wicBitmap; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs index d3ae38311b2..3bc0e4ff449 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/Imaging/WriteableBitmap.cs @@ -85,15 +85,6 @@ BitmapPalette palette // Sanitize inputs // - if (pixelFormat == null) - { - // Backwards Compat: - // - // The original code would null-ref, but we choose to raise a - // better exception. - throw new ArgumentNullException("pixelFormat"); - } - if (pixelFormat.Palettized && palette == null) { throw new InvalidOperationException(SR.Get(SRID.Image_IndexedPixelFormatRequiresPalette)); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs index daa2c16a7e4..34c864211e5 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/LineGeometry.cs @@ -107,9 +107,6 @@ internal override Rect GetBoundsInternal(Pen pen, Matrix worldMatrix, double tol internal static Rect GetBoundsHelper(Pen pen, Matrix worldMatrix, Point pt1, Point pt2, Matrix geometryMatrix, double tolerance, ToleranceType type) { - Debug.Assert(worldMatrix != null); - Debug.Assert(geometryMatrix != null); - if (pen == null && worldMatrix.IsIdentity && geometryMatrix.IsIdentity) { return new Rect(pt1, pt2); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs index a204c8fa2d2..3abf8d26275 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media/RectangleGeometry.cs @@ -190,9 +190,6 @@ internal static Rect GetBoundsHelper(Pen pen, Matrix worldMatrix, Rect rect, dou { Rect boundingRect; - Debug.Assert(worldMatrix != null); - Debug.Assert(geometryMatrix != null); - if (rect.IsEmpty) { boundingRect = Rect.Empty; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs index 48bb9135b85..3fc14575539 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/Windows/Media3D/GeneralTransform3DTo2D.cs @@ -43,15 +43,13 @@ public bool TryTransform(Point3D inPoint, out Point result) result = new Point(); // project the point - if (_projectionTransform != null) - { Point3D projectedPoint = _projectionTransform.Transform(inPoint); - - if (_transformBetween2D != null) - { - result = _transformBetween2D.Transform(new Point(projectedPoint.X, projectedPoint.Y)); - success = true; - } - } + Point3D projectedPoint = _projectionTransform.Transform(inPoint); + + if (_transformBetween2D != null) + { + result = _transformBetween2D.Transform(new Point(projectedPoint.X, projectedPoint.Y)); + success = true; + } return success; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs index e8e6b15f34c..2e48db386f6 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs @@ -215,8 +215,6 @@ internal static IntPtr MarshalPropVariant(Object obj) // allocate an unmanaged PROPVARIANT to return pNative = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(PROPVARIANT))); - // Per MSDN, AllocCoTaskMem never returns null. One can't be too careful, though. - Invariant.Assert(pNative != null); // marshal the managed PROPVARIANT into the unmanaged block and return it Marshal.StructureToPtr(v, pNative, false); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs index 38f464a2a95..d5be8f8c31d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/Printing/printdlgexmarshaler.cs @@ -628,7 +628,7 @@ IntPtr unmanagedBuffer } catch (Exception) { - if (unmanagedBuffer != null) + if (unmanagedBuffer != IntPtr.Zero) { FreeUnmanagedPrintDlgExStruct(unmanagedBuffer); unmanagedBuffer = IntPtr.Zero; diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs index 14d44788f8c..4b643148c46 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/PtsHost/CellParaClient.cs @@ -157,7 +157,7 @@ internal void FormatCellFinite(Size subpageSize, IntPtr breakRecordIn, bool isEm int dvrTopSpace; PTS.FSPAP fspap; - if(CellParagraph.StructuralCache.DtrList != null && breakRecordIn != null) + if(CellParagraph.StructuralCache.DtrList != null && breakRecordIn != IntPtr.Zero) { CellParagraph.InvalidateStructure(TextContainerHelper.GetCPFromElement(CellParagraph.StructuralCache.TextContainer, CellParagraph.Element, ElementEdge.BeforeStart)); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs index cf159ed3b72..ccbf13294a0 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/WindowsRuntime/Generated/WinRT/Marshalers.cs @@ -127,7 +127,7 @@ public void Dispose() marshaler?.Dispose(); } } - if (_array != null) + if (_array != IntPtr.Zero) { Marshal.FreeCoTaskMem(_array); } @@ -445,7 +445,7 @@ public void Dispose() Marshaler.DisposeMarshaler(marshaler); } } - if (_array != null) + if (_array != IntPtr.Zero) { Marshal.FreeCoTaskMem(_array); } @@ -627,7 +627,7 @@ public void Dispose() DisposeMarshaler(marshaler); } } - if (_array != null) + if (_array != IntPtr.Zero) { Marshal.FreeCoTaskMem(_array); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs index 10d71f9d44b..482694566cc 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs @@ -30,10 +30,7 @@ public sealed class DateTimeAutomationPeer : AutomationPeer, IGridItemProvider, internal DateTimeAutomationPeer(DateTime date, Calendar owningCalendar, CalendarMode buttonMode) : base() { - if (date == null) - { - throw new ArgumentNullException("date"); - } + // DateTime is a non-nullable value (a struct) type and cannot be null if (owningCalendar == null) { throw new ArgumentNullException("owningCalendar"); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs index 8b483986745..d5dfeaeca82 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs @@ -1380,23 +1380,21 @@ private void ProcessEndKey(bool shift) { case CalendarMode.Month: { - if (this.DisplayDate != null) - { - DateTime? selectedDate = new DateTime(this.DisplayDateInternal.Year, this.DisplayDateInternal.Month, 1); - - if (DateTimeHelper.CompareYearMonth(DateTime.MaxValue, selectedDate.Value) > 0) - { - // since DisplayDate is not equal to DateTime.MaxValue we are sure selectedDate is not null - selectedDate = DateTimeHelper.AddMonths(selectedDate.Value, 1).Value; - selectedDate = DateTimeHelper.AddDays(selectedDate.Value, -1).Value; - } - else - { - selectedDate = DateTime.MaxValue; - } + // 'this.DisplayDate' is a non-nullable value type (a struct) and can never be null. + DateTime? selectedDate = new DateTime(this.DisplayDateInternal.Year, this.DisplayDateInternal.Month, 1); - ProcessSelection(shift, selectedDate); + if (DateTimeHelper.CompareYearMonth(DateTime.MaxValue, selectedDate.Value) > 0) + { + // since DisplayDate is not equal to DateTime.MaxValue we are sure selectedDate is not null + selectedDate = DateTimeHelper.AddMonths(selectedDate.Value, 1).Value; + selectedDate = DateTimeHelper.AddDays(selectedDate.Value, -1).Value; } + else + { + selectedDate = DateTime.MaxValue; + } + + ProcessSelection(shift, selectedDate); break; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs index 7d543ccc2e7..43821599d4e 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs @@ -349,9 +349,7 @@ private bool IsValidThread() /// private CalendarDateRange GetContainingDateRange(DateTime date) { - if (date == null) - return null; - + // DateTime is a non-nullable value type (a structure) and cannot be null. for (int i = 0; i < Count; i++) { if (DateTimeHelper.InRange(date, this[i])) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs index 6f55d34c8dc..f69efd3e7d2 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs @@ -278,7 +278,9 @@ internal void NotifyPropertyChanged(DependencyObject d, string propertyName, Dep { column.RefreshCellContent(this, propertyName); } - else if (e != null && e.Property != null) + // DependencyPropertyChangedEventArgs is a non-nullable value type (a struct) + // and can never be null. + else if (e.Property != null) { column.RefreshCellContent(this, e.Property.Name); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs index f19015c935c..29cc92bba9f 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Primitives/CalendarItem.cs @@ -681,7 +681,6 @@ private void Cell_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) CalendarKeyboardHelper.GetMetaKeyState(out ctrl, out shift); DateTime selectedDate = (DateTime)b.DataContext; - Debug.Assert(selectedDate != null); switch (this.Owner.SelectionMode) { @@ -1303,7 +1302,6 @@ private void SetYearModeMonthButtons() if (this.Owner != null) { - Debug.Assert(this.Owner.DisplayDateInternal != null); childButton.HasSelectedDays = (DateTimeHelper.CompareYearMonth(day, this.Owner.DisplayDateInternal) == 0); if (DateTimeHelper.CompareYearMonth(day, this.Owner.DisplayDateStartInternal) < 0 || DateTimeHelper.CompareYearMonth(day, this.Owner.DisplayDateEndInternal) > 0) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs index a5c960137f8..969b696f89a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/SelectedDatesCollection.cs @@ -278,7 +278,7 @@ protected override void SetItem(int index, DateTime item) } else { - if (item != null && DateTime.Compare(this[index], item) != 0 && Calendar.IsValidDateSelection(this._owner, item)) + if (DateTime.Compare(this[index], item) != 0 && Calendar.IsValidDateSelection(this._owner, item)) { removedItems.Add(this[index]); base.SetItem(index, item); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs index 2b25d922d5e..7698d66aeca 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs @@ -220,8 +220,9 @@ internal override void OnPropertyInvalidation(DependencyObject d, DependencyProp { if (d == null) throw new ArgumentNullException("d"); - if (args == null) - throw new ArgumentNullException("args"); + + // DependencyPropertyChangedEventArgs is a struct and never equal to null. + // There is no need for a null check here. DependencyProperty dp = args.Property; if (dp == null) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs index bfd0d63d767..eb6beefb2ec 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs @@ -4589,7 +4589,8 @@ protected sealed override void ArrangeCore(Rect finalRect) // First, get clipped, transformed, unrounded size. if (useLayoutRounding) { - if (ltd != null && ltd.TransformedUnroundedDS != null) + // 'transformUnroundedDS' is a non-nullable value type and can never be null. + if (ltd != null) { transformedUnroundedDS = ltd.TransformedUnroundedDS; transformedUnroundedDS.Width = Math.Max(0, transformedUnroundedDS.Width - marginWidth); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs index fc19dd6d92e..1b65ea82a86 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Standard/NativeMethods.cs @@ -2797,7 +2797,7 @@ public static MONITORINFO GetMonitorInfo(IntPtr hMonitor) public static IntPtr GetStockObject(StockObject fnObject) { IntPtr retPtr = _GetStockObject(fnObject); - if (retPtr == null) + if (retPtr == IntPtr.Zero) { HRESULT.ThrowLastError(); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs index 6cfe7cd829b..7824e9107d7 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/VisualStateManager.cs @@ -408,7 +408,7 @@ private static Storyboard GenerateDynamicTransitionAnimations(FrameworkElement r if (transition != null) { - if (transition.GeneratedDuration != null) + if (transition.GeneratedDuration != DurationZero) { dynamic.Duration = transition.GeneratedDuration; } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs index b5537ef5d49..7a69d20993a 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs @@ -6147,8 +6147,9 @@ private static object CoerceRenderTransform(DependencyObject d, object value) { Transform renderTransformValue = (Transform)value; + // 'renderTransformValue.Value' is of type 'Matrix' and can never be null. if ((value == null) || - (renderTransformValue != null && renderTransformValue.Value != null && renderTransformValue.Value.IsIdentity == true)) + (renderTransformValue != null && renderTransformValue.Value.IsIdentity == true)) { // setting this value is allowed. } diff --git a/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs b/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs index e9dc2e01ecc..3048eafdfa3 100644 --- a/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs +++ b/src/Microsoft.DotNet.Wpf/src/Shared/MS/Win32/HwndSubclass.cs @@ -553,7 +553,8 @@ private bool UnhookWindowProc(bool force) //AvDebug.Assert(_gcHandle.IsAllocated, "External GC handle has not been allocated."); - if(null != _gcHandle) + // GCHandle is a non-nullable type. Check GCHandle.IsAllocated before calling Free(). + if(_gcHandle.IsAllocated) _gcHandle.Free(); return true; diff --git a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs index a7b7ab94970..8fd06d0c156 100644 --- a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs +++ b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs @@ -181,7 +181,8 @@ private void Initialize( } // set metafata as required - if (contentId != null) + // Guid is a non-nullable value type and gets a value on creation. Check Guid.Empty instead. + if (contentId != Guid.Empty) { hr = SafeNativeMethods.DRMSetMetaData( _issuanceLicenseHandle, diff --git a/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs b/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs index 0b895b3dee9..abbf7e8fa01 100644 --- a/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs +++ b/src/Microsoft.DotNet.Wpf/src/WindowsBase/System/Windows/SplashScreen.cs @@ -238,7 +238,7 @@ private object CloseInternal(Object fadeOutArg) // In the case where the developer has specified AutoClose=True and then calls // Close(non_zero_timespan) before the auto close operation is dispatched we begin // the fadeout immidiately and ignore the later call to close. - if (_dt != null || _hwnd == null) + if (_dt != null || _hwnd == IntPtr.Zero) { return BooleanBoxes.TrueBox; } From 05cbb0eab5fa2a2d0bc03288a198a1f98c4311f5 Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Wed, 14 Oct 2020 15:07:22 -0700 Subject: [PATCH 43/56] PR feedback --- .../MS/Internal/IO/Packaging/indexingfiltermarshaler.cs | 3 +++ .../System/Windows/Automation/Peers/DateTimeAutomationPeer.cs | 1 - .../PresentationFramework/System/Windows/Controls/Calendar.cs | 1 - .../System/Windows/Controls/CalendarBlackoutDatesCollection.cs | 1 - .../System/Windows/Controls/DataGridCell.cs | 2 -- .../System/Windows/Data/BindingExpression.cs | 3 --- .../src/PresentationFramework/System/Windows/Window.cs | 1 - .../MS/Internal/Security/RightsManagement/IssuanceLicense.cs | 3 +-- 8 files changed, 4 insertions(+), 11 deletions(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs index 2e48db386f6..fee3fcbdb25 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs @@ -216,6 +216,9 @@ internal static IntPtr MarshalPropVariant(Object obj) // allocate an unmanaged PROPVARIANT to return pNative = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(PROPVARIANT))); + // Per MSDN, AllocCoTaskMem never returns null. Check for IntPtr.Zero instead. + Invariant.Assert(pNative != IntPtr.Zero); + // marshal the managed PROPVARIANT into the unmanaged block and return it Marshal.StructureToPtr(v, pNative, false); } diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs index 482694566cc..6ed7fd6a0fc 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Automation/Peers/DateTimeAutomationPeer.cs @@ -30,7 +30,6 @@ public sealed class DateTimeAutomationPeer : AutomationPeer, IGridItemProvider, internal DateTimeAutomationPeer(DateTime date, Calendar owningCalendar, CalendarMode buttonMode) : base() { - // DateTime is a non-nullable value (a struct) type and cannot be null if (owningCalendar == null) { throw new ArgumentNullException("owningCalendar"); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs index d5dfeaeca82..e7b7e7134c0 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Calendar.cs @@ -1380,7 +1380,6 @@ private void ProcessEndKey(bool shift) { case CalendarMode.Month: { - // 'this.DisplayDate' is a non-nullable value type (a struct) and can never be null. DateTime? selectedDate = new DateTime(this.DisplayDateInternal.Year, this.DisplayDateInternal.Month, 1); if (DateTimeHelper.CompareYearMonth(DateTime.MaxValue, selectedDate.Value) > 0) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs index 43821599d4e..0f6c3b403a9 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/CalendarBlackoutDatesCollection.cs @@ -349,7 +349,6 @@ private bool IsValidThread() /// private CalendarDateRange GetContainingDateRange(DateTime date) { - // DateTime is a non-nullable value type (a structure) and cannot be null. for (int i = 0; i < Count; i++) { if (DateTimeHelper.InRange(date, this[i])) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs index f69efd3e7d2..6358bf00e7d 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/DataGridCell.cs @@ -278,8 +278,6 @@ internal void NotifyPropertyChanged(DependencyObject d, string propertyName, Dep { column.RefreshCellContent(this, propertyName); } - // DependencyPropertyChangedEventArgs is a non-nullable value type (a struct) - // and can never be null. else if (e.Property != null) { column.RefreshCellContent(this, e.Property.Name); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs index 7698d66aeca..7ccbe125d62 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Data/BindingExpression.cs @@ -221,9 +221,6 @@ internal override void OnPropertyInvalidation(DependencyObject d, DependencyProp if (d == null) throw new ArgumentNullException("d"); - // DependencyPropertyChangedEventArgs is a struct and never equal to null. - // There is no need for a null check here. - DependencyProperty dp = args.Property; if (dp == null) throw new InvalidOperationException(SR.Get(SRID.ArgumentPropertyMustNotBeNull, "Property", "args")); diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs index 7a69d20993a..d15232b2f15 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Window.cs @@ -6147,7 +6147,6 @@ private static object CoerceRenderTransform(DependencyObject d, object value) { Transform renderTransformValue = (Transform)value; - // 'renderTransformValue.Value' is of type 'Matrix' and can never be null. if ((value == null) || (renderTransformValue != null && renderTransformValue.Value.IsIdentity == true)) { diff --git a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs index 8fd06d0c156..79e579cbec8 100644 --- a/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs +++ b/src/Microsoft.DotNet.Wpf/src/WindowsBase/MS/Internal/Security/RightsManagement/IssuanceLicense.cs @@ -180,8 +180,7 @@ private void Initialize( } } - // set metafata as required - // Guid is a non-nullable value type and gets a value on creation. Check Guid.Empty instead. + // set metadata as required if (contentId != Guid.Empty) { hr = SafeNativeMethods.DRMSetMetaData( From 0c63f2f5286a7efff1d7d8b12b9c7babcf60aed6 Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Wed, 14 Oct 2020 15:16:10 -0700 Subject: [PATCH 44/56] PR feedback --- .../MS/Internal/IO/Packaging/indexingfiltermarshaler.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs index fee3fcbdb25..aaf0caaa619 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationFramework/MS/Internal/IO/Packaging/indexingfiltermarshaler.cs @@ -216,7 +216,7 @@ internal static IntPtr MarshalPropVariant(Object obj) // allocate an unmanaged PROPVARIANT to return pNative = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(PROPVARIANT))); - // Per MSDN, AllocCoTaskMem never returns null. Check for IntPtr.Zero instead. + // Per MSDN, AllocCoTaskMem never returns null: check for IntPtr.Zero instead. Invariant.Assert(pNative != IntPtr.Zero); // marshal the managed PROPVARIANT into the unmanaged block and return it From a03ddbc6400589dc8f510f4a477e53ad4ad01446 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2020 23:18:04 +0000 Subject: [PATCH 45/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.3 (#3651) [release/5.0] Update dependencies from dotnet/winforms - Coherency Updates: - Microsoft.Win32.Registry: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.CodeDom: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Configuration.ConfigurationManager: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Diagnostics.EventLog: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.DirectoryServices: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Drawing.Common: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Reflection.MetadataLoadContext: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.AccessControl: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Cryptography.Xml: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Permissions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Security.Principal.Windows: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Windows.Extensions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.Platforms: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.IO.Packaging: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILDAsm: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.ILAsm: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - System.Resources.Extensions: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Internal: from 5.0.0-rtm.20514.4 to 5.0.0-rtm.20514.6 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Ref: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) - Microsoft.NETCore.App.Runtime.win-x64: from 5.0.0 to 5.0.0 (parent: Microsoft.Private.Winforms) --- NuGet.config | 2 +- eng/Version.Details.xml | 50 ++++++++++++++++++++--------------------- eng/Versions.props | 4 ++-- 3 files changed, 28 insertions(+), 28 deletions(-) diff --git a/NuGet.config b/NuGet.config index ad7b258e22e..8a95a7a7678 100644 --- a/NuGet.config +++ b/NuGet.config @@ -4,7 +4,7 @@ - + diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 69d69be71d6..894bc6a9ce6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,37 +1,37 @@ - + https://github.com/dotnet/winforms - d74c71316d28fd757c4a0d06efd822211d2bdecf + 9bbe8c1c63ee6dcd036bbf503f7ab70a2fc0ef98 - + https://github.com/dotnet/winforms - d74c71316d28fd757c4a0d06efd822211d2bdecf + 9bbe8c1c63ee6dcd036bbf503f7ab70a2fc0ef98 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/corefx @@ -39,31 +39,31 @@ https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int @@ -71,7 +71,7 @@ https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/coreclr @@ -79,27 +79,27 @@ https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 - + https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 https://github.com/dotnet/runtime - 78740beb2657e0aacc1691826656af2cafb7ddc4 + 2d8e19f1880c655bcc0994852f41b47341e2c566 diff --git a/eng/Versions.props b/eng/Versions.props index 3e2d48176d8..e7fb1f9e3b3 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -8,7 +8,7 @@ - 5.0.0-rtm.20514.2 + 5.0.0-rtm.20514.3 @@ -18,7 +18,7 @@ - 5.0.0-rtm.20514.4 + 5.0.0-rtm.20514.6 5.0.0 5.0.0 5.0.0 From bfd866961695a092620202624878bab7d02a64a6 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Wed, 14 Oct 2020 23:25:49 +0000 Subject: [PATCH 46/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.4 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20514.4 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 9c2f51dcec2..6a484ae2722 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - 9166f2d9b3f6fb067024c0841c833436a58120e4 + c14f2a121ced2e931a9508ea8bae6b90ac230f01 - + https://github.com/dotnet/winforms - 9166f2d9b3f6fb067024c0841c833436a58120e4 + c14f2a121ced2e931a9508ea8bae6b90ac230f01 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 22ee076a76a..229b21f6088 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20514.1 + 6.0.0-alpha.1.20514.4 From 569436dac7f0e5cf904ad9a551fdb56228543f8f Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Wed, 14 Oct 2020 23:47:46 +0000 Subject: [PATCH 47/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.5 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20514.5 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 6a484ae2722..1e9552f1223 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - c14f2a121ced2e931a9508ea8bae6b90ac230f01 + c25eb1238820f935f115a578788f67e0a768deb2 - + https://github.com/dotnet/winforms - c14f2a121ced2e931a9508ea8bae6b90ac230f01 + c25eb1238820f935f115a578788f67e0a768deb2 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 229b21f6088..bc37bfe483e 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20514.4 + 6.0.0-alpha.1.20514.5 From 4714d5cfb4c10c8c2df35a22ff4db4150a6357cf Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Wed, 14 Oct 2020 23:58:55 +0000 Subject: [PATCH 48/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.6 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20514.6 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 1e9552f1223..f45c2d8e50a 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - c25eb1238820f935f115a578788f67e0a768deb2 + 197420f37596230252e283a2debc2f938bfb0e70 - + https://github.com/dotnet/winforms - c25eb1238820f935f115a578788f67e0a768deb2 + 197420f37596230252e283a2debc2f938bfb0e70 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index bc37bfe483e..37a467e056d 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20514.5 + 6.0.0-alpha.1.20514.6 From 469542fd019b7747ccef888e854365d0a743db1d Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Thu, 15 Oct 2020 01:45:15 +0000 Subject: [PATCH 49/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.7 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20514.7 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index f45c2d8e50a..389f9312682 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - 197420f37596230252e283a2debc2f938bfb0e70 + 100ab62a5cc147b7ef82c015a0775897503471e4 - + https://github.com/dotnet/winforms - 197420f37596230252e283a2debc2f938bfb0e70 + 100ab62a5cc147b7ef82c015a0775897503471e4 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 37a467e056d..5a73896a932 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20514.6 + 6.0.0-alpha.1.20514.7 From 8c2cdd65764db9a51f4eeea999946856aac534e9 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 15 Oct 2020 06:31:23 +0000 Subject: [PATCH 50/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.9 (#3652) [release/5.0] Update dependencies from dotnet/winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 894bc6a9ce6..122eb6e7d15 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - 9bbe8c1c63ee6dcd036bbf503f7ab70a2fc0ef98 + 8794266e7b2c1dfa83e210849edabf80e6dd6981 - + https://github.com/dotnet/winforms - 9bbe8c1c63ee6dcd036bbf503f7ab70a2fc0ef98 + 8794266e7b2c1dfa83e210849edabf80e6dd6981 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index e7fb1f9e3b3..3025a568ff5 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -8,7 +8,7 @@ - 5.0.0-rtm.20514.3 + 5.0.0-rtm.20514.9 From 2d719efab07144f7bedf40d03a3d9270376e7c0d Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Thu, 15 Oct 2020 08:39:33 +0000 Subject: [PATCH 51/56] Update dependencies from https://github.com/dotnet/winforms build 20201014.8 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20514.8 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 389f9312682..81e7d1df7a6 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - 100ab62a5cc147b7ef82c015a0775897503471e4 + ccc98d401280130447cd67f338d8797cee2faf4b - + https://github.com/dotnet/winforms - 100ab62a5cc147b7ef82c015a0775897503471e4 + ccc98d401280130447cd67f338d8797cee2faf4b https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 5a73896a932..1e304894ade 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20514.7 + 6.0.0-alpha.1.20514.8 From c9c6136ddd7ac46c8f1a3e018d0fe261ff266772 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Thu, 15 Oct 2020 21:40:28 +0000 Subject: [PATCH 52/56] Update dependencies from https://github.com/dotnet/winforms build 20201015.2 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20515.2 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 81e7d1df7a6..76b4d739418 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - ccc98d401280130447cd67f338d8797cee2faf4b + ff5496d17fd86440773c3a9fc79134ff527137c4 - + https://github.com/dotnet/winforms - ccc98d401280130447cd67f338d8797cee2faf4b + ff5496d17fd86440773c3a9fc79134ff527137c4 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 68523f062b7..756439f3a41 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20514.8 + 6.0.0-alpha.1.20515.2 From c8849fdff8c226b36b85caa6691e78da5843acfd Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Fri, 16 Oct 2020 00:49:35 +0000 Subject: [PATCH 53/56] Update dependencies from https://github.com/dotnet/winforms build 20201015.3 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20515.3 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 76b4d739418..15c9b9ddd64 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - ff5496d17fd86440773c3a9fc79134ff527137c4 + abe17035d8690c2f768a3edec8bb2cdf6855fc87 - + https://github.com/dotnet/winforms - ff5496d17fd86440773c3a9fc79134ff527137c4 + abe17035d8690c2f768a3edec8bb2cdf6855fc87 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 756439f3a41..0383c73cea5 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20515.2 + 6.0.0-alpha.1.20515.3 From 51b2282a9e64767135674181d92aff5871ffee07 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Fri, 16 Oct 2020 18:11:34 +0000 Subject: [PATCH 54/56] Update dependencies from https://github.com/dotnet/winforms build 20201016.1 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20516.1 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20513.9 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 15c9b9ddd64..62b3f2a8734 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,13 +1,13 @@ - + https://github.com/dotnet/winforms - abe17035d8690c2f768a3edec8bb2cdf6855fc87 + 867553888603d5ab04aa2713b28e754e85239317 - + https://github.com/dotnet/winforms - abe17035d8690c2f768a3edec8bb2cdf6855fc87 + 867553888603d5ab04aa2713b28e754e85239317 https://github.com/dotnet/runtime diff --git a/eng/Versions.props b/eng/Versions.props index 0383c73cea5..6752bf2a299 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -9,7 +9,7 @@ - 6.0.0-alpha.1.20515.3 + 6.0.0-alpha.1.20516.1 From 86421a957836bbee265f9e0f299929c9bdb57a32 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Fri, 16 Oct 2020 19:00:27 +0000 Subject: [PATCH 55/56] Update dependencies from https://github.com/dotnet/winforms build 20201016.2 Microsoft.Dotnet.WinForms.ProjectTemplates , Microsoft.Private.Winforms From Version 6.0.0-alpha.1.20466.4 -> To Version 6.0.0-alpha.1.20516.2 Dependency coherency updates Microsoft.Win32.Registry,System.CodeDom,System.Configuration.ConfigurationManager,System.Diagnostics.EventLog,System.DirectoryServices,System.Drawing.Common,System.Reflection.MetadataLoadContext,System.Security.AccessControl,System.Security.Cryptography.Xml,System.Security.Permissions,System.Security.Principal.Windows,System.Windows.Extensions,Microsoft.NETCore.Platforms,System.IO.Packaging,Microsoft.NETCore.ILDAsm,Microsoft.NETCore.ILAsm,System.Resources.Extensions,Microsoft.NETCore.App.Internal,Microsoft.NETCore.App.Ref,Microsoft.NETCore.App.Runtime.win-x64 From Version 6.0.0-alpha.1.20428.2 -> To Version 6.0.0-alpha.1.20515.8 (parent: Microsoft.Private.Winforms --- eng/Version.Details.xml | 88 ++++++++++++++++++++--------------------- eng/Versions.props | 42 ++++++++++---------- 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 62b3f2a8734..aa651ab4f27 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,105 +1,105 @@ - + https://github.com/dotnet/winforms - 867553888603d5ab04aa2713b28e754e85239317 + da4cd35695fc7fbd19adfc3067f7b44ac90bc9e0 - + https://github.com/dotnet/winforms - 867553888603d5ab04aa2713b28e754e85239317 + da4cd35695fc7fbd19adfc3067f7b44ac90bc9e0 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 https://github.com/dotnet/corefx 5cee7c97d602f294e27c582d4dab81ec388f1d7b - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 https://dev.azure.com/dnceng/internal/_git/dotnet-wpf-int c5bf2dd188aafead1580c817e297b02080a77a1a - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 https://github.com/dotnet/coreclr d5bb8bf2437d447750cf0203dd55bb5160ff36b8 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 - + https://github.com/dotnet/runtime - eea2256e56f32d70e3fbe72a1473a7ffd2f5c16e + 722b8a660e7e0c59419196be102784244883ff08 diff --git a/eng/Versions.props b/eng/Versions.props index 6752bf2a299..62727a74d22 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -4,42 +4,42 @@ 6.0.0 alpha 1 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 - 6.0.0-alpha.1.20516.1 + 6.0.0-alpha.1.20516.2 5.0.0-alpha1.19562.1 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 5.0.0-alpha.1.19563.6 4.6.0-preview4.19176.11 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 - 6.0.0-alpha.1.20513.9 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 + 6.0.0-alpha.1.20515.8 From 372724fd787f5ce6b782155d1fda3f8cd7bebbc4 Mon Sep 17 00:00:00 2001 From: Ryland <41491307+ryalanms@users.noreply.github.com> Date: Fri, 16 Oct 2020 13:14:47 -0700 Subject: [PATCH 56/56] Suppress obsolete API warnings. These must be fixed for 6.0.0. --- .../MS/internal/IO/Packaging/PseudoWebRequest.cs | 2 ++ .../src/PresentationCore/MS/internal/WpfWebRequestHelper.cs | 2 ++ .../src/PresentationCore/System/IO/Packaging/PackWebRequest.cs | 2 ++ .../src/PresentationCore/ref/PresentationCore.cs | 2 ++ .../src/ReachFramework/PrintConfig/FallbackPTProvider.cs | 2 ++ 5 files changed, 10 insertions(+) diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/IO/Packaging/PseudoWebRequest.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/IO/Packaging/PseudoWebRequest.cs index 016dd4d81cc..62d9e87f5a0 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/IO/Packaging/PseudoWebRequest.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/IO/Packaging/PseudoWebRequest.cs @@ -46,6 +46,7 @@ internal class PseudoWebRequest : WebRequest /// uri of the package /// uri of the part - may be null /// cache entry to base this response on + #pragma warning disable SYSLIB0014 internal PseudoWebRequest(Uri uri, Uri packageUri, Uri partUri, Package cacheEntry) { Debug.Assert(uri != null, "PackWebRequest uri cannot be null"); @@ -61,6 +62,7 @@ internal PseudoWebRequest(Uri uri, Uri packageUri, Uri partUri, Package cacheEnt // set defaults SetDefaults(); } + #pragma warning restore SYSLIB0014 //------------------------------------------------------ // diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/WpfWebRequestHelper.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/WpfWebRequestHelper.cs index 48f12444d7c..38b27cfe9bd 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/WpfWebRequestHelper.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/MS/internal/WpfWebRequestHelper.cs @@ -72,7 +72,9 @@ internal static WebRequest CreateRequest(Uri uri) uri = new Uri(uri.GetLeftPart(UriPartial.Path)); } + #pragma warning disable SYSLIB0014 WebRequest request = WebRequest.Create(uri); + #pragma warning restore SYSLIB0014 // It is not clear whether WebRequest.Create() can ever return null, but v1 code make this check in // a couple of places, so it is still done here, just in case. diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/IO/Packaging/PackWebRequest.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/IO/Packaging/PackWebRequest.cs index e9b532a9dd6..73e49185fc8 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/IO/Packaging/PackWebRequest.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/System/IO/Packaging/PackWebRequest.cs @@ -66,6 +66,7 @@ internal PackWebRequest(Uri uri, Uri packageUri, Uri partUri) /// is the cacheEntry thread-safe? /// This should only be called by PackWebRequestFactory /// Will throw an ArgumentException if the given URI is not of the correct scheme + #pragma warning disable SYSLIB0014 internal PackWebRequest(Uri uri, Uri packageUri, Uri partUri, Package cacheEntry, bool respectCachePolicy, bool cachedPackageIsThreadSafe) { @@ -89,6 +90,7 @@ internal PackWebRequest(Uri uri, Uri packageUri, Uri partUri, Package cacheEntry "PackWebRequest - working from Package Cache"); #endif } + #pragma warning restore SYSLIB0014 //------------------------------------------------------ // diff --git a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs index 7a6b09d26f0..787b6ad7e18 100644 --- a/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs +++ b/src/Microsoft.DotNet.Wpf/src/PresentationCore/ref/PresentationCore.cs @@ -6,6 +6,7 @@ public static void AddPackage(System.Uri uri, System.IO.Packaging.Package packag public static System.IO.Packaging.Package GetPackage(System.Uri uri) { throw null; } public static void RemovePackage(System.Uri uri) { } } + #pragma warning disable SYSLIB0014 public sealed partial class PackWebRequest : System.Net.WebRequest { internal PackWebRequest() { } @@ -25,6 +26,7 @@ internal PackWebRequest() { } public override System.IO.Stream GetRequestStream() { throw null; } public override System.Net.WebResponse GetResponse() { throw null; } } + #pragma warning restore SYSLIB0014 public sealed partial class PackWebRequestFactory : System.Net.IWebRequestCreate { public PackWebRequestFactory() { } diff --git a/src/Microsoft.DotNet.Wpf/src/ReachFramework/PrintConfig/FallbackPTProvider.cs b/src/Microsoft.DotNet.Wpf/src/ReachFramework/PrintConfig/FallbackPTProvider.cs index 2e4eefb9bd4..8d779b5a22f 100644 --- a/src/Microsoft.DotNet.Wpf/src/ReachFramework/PrintConfig/FallbackPTProvider.cs +++ b/src/Microsoft.DotNet.Wpf/src/ReachFramework/PrintConfig/FallbackPTProvider.cs @@ -400,7 +400,9 @@ private string OemDriverNamespace CultureInfo.InvariantCulture, DeviceNamespaceFormat, BuildInfo.WCP_VERSION_SUFFIX, + #pragma warning disable SYSLIB0013 Uri.EscapeUriString(this._driverName), + #pragma warning restore SYSLIB0013 this._driverVersion); }