You've already forked linux-packaging-mono
Imported Upstream version 5.16.0.100
Former-commit-id: 38faa55fb9669e35e7d8448b15c25dc447f25767
This commit is contained in:
parent
0a9828183b
commit
7d7f676260
@@ -3,8 +3,6 @@
|
||||
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{FD6AA2B9-56DB-4BCC-85E0-7727506562B0}</ProjectGuid>
|
||||
<!-- UAPvNext is not yet mapped to netstandard2.0, manually duplicate this ref -->
|
||||
<PackageTargetFramework Condition="'$(TargetGroup)' == 'netstandard'">netstandard2.0;$(UAPvNextTFM)</PackageTargetFramework>
|
||||
<IsPartialFacadeAssembly Condition="'$(TargetGroup)' == 'netfx'">true</IsPartialFacadeAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'netfx-Debug|AnyCPU'" />
|
||||
@@ -12,9 +10,11 @@
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'netstandard-Debug|AnyCPU'" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'netstandard-Release|AnyCPU'" />
|
||||
<ItemGroup>
|
||||
<SuppressPackageTargetFrameworkCompatibility Include="$(UAPvNextTFM)" />
|
||||
<Compile Include="System.Configuration.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\System.Security.Permissions\ref\System.Security.Permissions.csproj" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="'$(IsPartialFacadeAssembly)' == 'true'">
|
||||
<Reference Include="mscorlib" />
|
||||
<Reference Include="System" />
|
||||
|
||||
@@ -1 +1 @@
|
||||
5124846c60d750bcb536bb4802a339dee73b9d28
|
||||
df2016a813e7a5c424756d7375cc553c89d2b8cf
|
||||
@@ -1,3 +0,0 @@
|
||||
Compat issues with assembly System.Configuration.ConfigurationManager:
|
||||
InterfacesShouldHaveSameMembers : Implementation interface member 'System.Configuration.Internal.IInternalConfigHost.GetRestrictedPermissions(System.Configuration.Internal.IInternalConfigRecord, System.Security.PermissionSet, System.Boolean)' is not in the contract.
|
||||
Total Issues: 1
|
||||
@@ -0,0 +1,5 @@
|
||||
Compat issues with assembly System.Configuration.ConfigurationManager:
|
||||
# Cannot remove the serialization constructors because they are needed for serialization
|
||||
MembersMustExist : Member 'System.Configuration.SettingsAttributeDictionary..ctor(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)' does not exist in the implementation but it does exist in the contract.
|
||||
MembersMustExist : Member 'System.Configuration.SettingsContext..ctor(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)' does not exist in the implementation but it does exist in the contract.
|
||||
Total Issues: 2
|
||||
@@ -5,6 +5,8 @@
|
||||
<!--Both types are instantiated using CreateInstance from TypeUtil.CreateInstance -->
|
||||
<Type Name="System.Configuration.ClientConfigurationHost" Dynamic="Required All" />
|
||||
<Type Name="System.Configuration.ProtectedConfigurationSection" Dynamic="Required All" />
|
||||
<Type Name="System.Configuration.Internal.InternalConfigHost" Dynamic="Required All" />
|
||||
<Type Name="System.Configuration.Internal.InternalConfigConfigurationFactory" Dynamic="Required All" />
|
||||
</Assembly>
|
||||
</Library>
|
||||
</Directives>
|
||||
|
||||
@@ -258,6 +258,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="'$(IsPartialFacadeAssembly)' != 'true'">
|
||||
<Reference Include="System.Security.Cryptography.ProtectedData" />
|
||||
<Reference Include="System.Security.Permissions" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Resources\$(AssemblyName).rd.xml" />
|
||||
|
||||
@@ -8,7 +8,7 @@ namespace System.Configuration
|
||||
{
|
||||
public sealed class ConfigurationSettings
|
||||
{
|
||||
public ConfigurationSettings() { }
|
||||
internal ConfigurationSettings() { }
|
||||
|
||||
[Obsolete("This method is obsolete, it has been replaced by System.Configuration!System.Configuration.ConfigurationManager.AppSettings")]
|
||||
public static NameValueCollection AppSettings
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
namespace System.Configuration
|
||||
{
|
||||
[ConfigurationCollection(typeof(DateTimeConfigurationElement))]
|
||||
public sealed class DateTimeConfigurationCollection : ConfigurationElementCollection
|
||||
internal sealed class DateTimeConfigurationCollection : ConfigurationElementCollection
|
||||
{
|
||||
private static readonly ConfigurationPropertyCollection s_properties;
|
||||
|
||||
|
||||
@@ -23,14 +23,14 @@ namespace System.Configuration
|
||||
out string locationConfigPath, IInternalConfigRoot configRoot, params object[] hostInitConfigurationParams)
|
||||
{
|
||||
// Stash the filemap so we can see if the machine config was explicitly specified
|
||||
_fileMap = (ConfigurationFileMap)hostInitConfigurationParams[0];
|
||||
_fileMap = hostInitConfigurationParams[0] as ConfigurationFileMap;
|
||||
base.InitForConfiguration(ref locationSubPath, out configPath, out locationConfigPath, configRoot, hostInitConfigurationParams);
|
||||
}
|
||||
|
||||
public override void Init(IInternalConfigRoot configRoot, params object[] hostInitParams)
|
||||
{
|
||||
// Stash the filemap so we can see if the machine config was explicitly specified
|
||||
_fileMap = (ConfigurationFileMap)hostInitParams[0];
|
||||
_fileMap = hostInitParams[0] as ConfigurationFileMap;
|
||||
base.Init(configRoot, hostInitParams);
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.IO;
|
||||
using System.Security;
|
||||
|
||||
namespace System.Configuration.Internal
|
||||
{
|
||||
@@ -230,5 +231,11 @@ namespace System.Configuration.Internal
|
||||
public virtual bool IsFullTrustSectionWithoutAptcaAllowed(IInternalConfigRecord configRecord) => true;
|
||||
|
||||
public virtual IDisposable Impersonate() => new DummyDisposable();
|
||||
|
||||
public virtual void GetRestrictedPermissions(IInternalConfigRecord configRecord, out PermissionSet permissionSet, out bool isHostReady)
|
||||
{
|
||||
permissionSet = new PermissionSet(null);
|
||||
isHostReady = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
using System.IO;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Security;
|
||||
|
||||
namespace System.Configuration.Internal
|
||||
{
|
||||
@@ -102,5 +103,7 @@ namespace System.Configuration.Internal
|
||||
bool IsFullTrustSectionWithoutAptcaAllowed(IInternalConfigRecord configRecord);
|
||||
|
||||
IDisposable Impersonate();
|
||||
|
||||
void GetRestrictedPermissions(IInternalConfigRecord configRecord, out PermissionSet permissionSet, out bool isHostReady);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ using System.Runtime.InteropServices;
|
||||
|
||||
namespace System.Configuration.Internal
|
||||
{
|
||||
public interface IInternalConfigHostPaths
|
||||
internal interface IInternalConfigHostPaths
|
||||
{
|
||||
void RefreshConfigPaths();
|
||||
bool HasLocalConfig { get; }
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.IO;
|
||||
using System.Security;
|
||||
|
||||
namespace System.Configuration.Internal
|
||||
{
|
||||
@@ -303,5 +304,11 @@ namespace System.Configuration.Internal
|
||||
public bool IsFullTrustSectionWithoutAptcaAllowed(IInternalConfigRecord configRecord) => true;
|
||||
|
||||
public IDisposable Impersonate() => new DummyDisposable();
|
||||
|
||||
public void GetRestrictedPermissions(IInternalConfigRecord configRecord, out PermissionSet permissionSet, out bool isHostReady)
|
||||
{
|
||||
permissionSet = new PermissionSet(null);
|
||||
isHostReady = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,15 @@
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
|
||||
// The CODEDOM check is here to support frameworks that may not have fully
|
||||
// incorporated all of corefx, but want to use System.Configuration.ConfigurationManager.
|
||||
// TempFileCollection was moved in corefx.
|
||||
#if CODEDOM
|
||||
using System.CodeDom.Compiler;
|
||||
#else
|
||||
using System.IO.Internal;
|
||||
#endif
|
||||
|
||||
namespace System.Configuration.Internal
|
||||
{
|
||||
internal class WriteFileContext
|
||||
@@ -13,14 +22,14 @@ namespace System.Configuration.Internal
|
||||
private const int SavingRetryInterval = 100; // 100 milliseconds
|
||||
private readonly string _templateFilename;
|
||||
|
||||
private IO.Internal.TempFileCollection _tempFiles;
|
||||
private TempFileCollection _tempFiles;
|
||||
|
||||
internal WriteFileContext(string filename, string templateFilename)
|
||||
{
|
||||
string directoryname = UrlPath.GetDirectoryOrRootName(filename);
|
||||
|
||||
_templateFilename = templateFilename;
|
||||
_tempFiles = new IO.Internal.TempFileCollection(directoryname);
|
||||
_tempFiles = new TempFileCollection(directoryname);
|
||||
try
|
||||
{
|
||||
TempNewFilename = _tempFiles.AddExtension("newcfg");
|
||||
|
||||
@@ -584,7 +584,7 @@ namespace System.Configuration
|
||||
// fail silently so that app code can easily loop through sections
|
||||
// and declare all of them?
|
||||
if (force && BaseConfigurationRecord.IsImplicitSection(SectionName))
|
||||
throw new ConfigurationErrorsException(SR.Cannot_declare_or_remove_implicit_section);
|
||||
throw new ConfigurationErrorsException(SR.Format(SR.Cannot_declare_or_remove_implicit_section, SectionName));
|
||||
|
||||
if (force && _flags[FlagIsUndeclared])
|
||||
{
|
||||
@@ -681,4 +681,4 @@ namespace System.Configuration
|
||||
_configRecord.RevertToParent(_configurationSection);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ namespace System.Configuration
|
||||
|
||||
public override int GetHashCode()
|
||||
{
|
||||
return ValueXml.GetHashCode();
|
||||
return ValueXml?.GetHashCode() ?? 0;
|
||||
}
|
||||
|
||||
protected internal override bool IsModified()
|
||||
|
||||
@@ -33,16 +33,6 @@ namespace System.Configuration
|
||||
|
||||
"mscorlib",
|
||||
"System",
|
||||
|
||||
// TODO: ISSUE #14528
|
||||
// System facade isn't currently part of the framework
|
||||
// package. Once it is added the following locations can
|
||||
// be removed. There are tests for types from each of
|
||||
// these locations.
|
||||
"System.Runtime",
|
||||
"System.Collections",
|
||||
"System.Collections.Concurrent",
|
||||
"System.Collections.Specialized",
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
@@ -187,4 +177,4 @@ namespace System.Configuration
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,6 +31,7 @@ using System;
|
||||
using System.Configuration;
|
||||
using System.Configuration.Internal;
|
||||
using System.IO;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Xml;
|
||||
|
||||
using Xunit;
|
||||
@@ -44,7 +45,12 @@ namespace MonoTests.System.Configuration
|
||||
{
|
||||
ConfigurationErrorsException cee = new ConfigurationErrorsException();
|
||||
Assert.NotNull(cee.BareMessage);
|
||||
Assert.True(cee.BareMessage.IndexOf("'" + typeof(ConfigurationErrorsException).FullName + "'") != -1, "#2:" + cee.BareMessage);
|
||||
|
||||
// \p{Pi} any kind of opening quote https://www.compart.com/en/unicode/category/Pi
|
||||
// \p{Pf} any kind of closing quote https://www.compart.com/en/unicode/category/Pf
|
||||
// \p{Po} any kind of punctuation character that is not a dash, bracket, quote or connector https://www.compart.com/en/unicode/category/Po
|
||||
Assert.True(Regex.IsMatch(cee.BareMessage, @"[\p{Pi}\p{Po}]" + Regex.Escape(typeof(ConfigurationErrorsException).FullName) + @"[\p{Pf}\p{Po}]"), "#2:" + cee.BareMessage);
|
||||
|
||||
Assert.NotNull(cee.Data);
|
||||
Assert.Equal(0, cee.Data.Count);
|
||||
Assert.Null(cee.Filename);
|
||||
|
||||
@@ -46,7 +46,6 @@ namespace MonoTests.System.Configuration
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[ActiveIssue(21000, TargetFrameworkMonikers.UapAot)]
|
||||
public void EditAfterAdd()
|
||||
{
|
||||
Config cfg = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
|
||||
|
||||
@@ -90,9 +90,11 @@
|
||||
<Compile Include="System\Configuration\LocalFileSettingsProviderTests.cs" />
|
||||
<Compile Include="System\Configuration\NameValueConfigurationCollectionTests.cs" />
|
||||
<Compile Include="System\Configuration\SectionGroupsTests.cs" />
|
||||
<Compile Include="System\Configuration\SettingElementTests.cs" />
|
||||
<Compile Include="System\Configuration\SmokeTest.cs" />
|
||||
<Compile Include="System\Configuration\StringUtilTests.cs" />
|
||||
<Compile Include="System\Configuration\TempConfig.cs" />
|
||||
<Compile Include="System\Configuration\TempConfigurationHost.cs" />
|
||||
<Compile Include="System\Configuration\TestData.cs" />
|
||||
<Compile Include="System\Configuration\StringValidatorTests.cs" />
|
||||
<Compile Include="System\Configuration\SubclassTypeValidatorAttributeTests.cs" />
|
||||
@@ -104,5 +106,11 @@
|
||||
<Compile Include="System\Configuration\ValidatiorUtilsTests.cs" />
|
||||
<Compile Include="System\Drawing\Configuration\SystemDrawingSectionTests.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="$(CommonTestPath)\System\Diagnostics\RemoteExecutorConsoleApp\RemoteExecutorConsoleApp.csproj">
|
||||
<Project>{69e46a6f-9966-45a5-8945-2559fe337827}</Project>
|
||||
<Name>RemoteExecutorConsoleApp</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
|
||||
</Project>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user