diff --git a/src/libraries/Directory.Build.props b/src/libraries/Directory.Build.props index bd273ec30c235b..8afb0d43d4fa9c 100644 --- a/src/libraries/Directory.Build.props +++ b/src/libraries/Directory.Build.props @@ -13,6 +13,7 @@ + diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/pkg/Microsoft.Extensions.Configuration.Json.pkgproj b/src/libraries/Microsoft.Extensions.Configuration.Json/pkg/Microsoft.Extensions.Configuration.Json.pkgproj new file mode 100644 index 00000000000000..b3f239fc3fd033 --- /dev/null +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/pkg/Microsoft.Extensions.Configuration.Json.pkgproj @@ -0,0 +1,9 @@ + + + + + net461;netcoreapp2.0;uap10.0.16299;$(AllXamarinFrameworks) + + + + \ No newline at end of file diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.cs b/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.cs index 886de43e81ae0e..1ddda5486f3da4 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.cs +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.cs @@ -1,6 +1,9 @@ // 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. +// ------------------------------------------------------------------------------ +// Changes to this file must follow the https://aka.ms/api-review process. +// ------------------------------------------------------------------------------ namespace Microsoft.Extensions.Configuration { diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.csproj b/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.csproj index cc1299a16f6c39..b5abfdb5d97413 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.csproj +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/ref/Microsoft.Extensions.Configuration.Json.csproj @@ -4,9 +4,9 @@ - - - - + + + + diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationExtensions.cs b/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationExtensions.cs index 173cf5d2788b34..a71e48ba7f1415 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationExtensions.cs +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationExtensions.cs @@ -71,7 +71,7 @@ public static IConfigurationBuilder AddJsonFile(this IConfigurationBuilder build } if (string.IsNullOrEmpty(path)) { - throw new ArgumentException(Resources.Error_InvalidFilePath, nameof(path)); + throw new ArgumentException(SR.Error_InvalidFilePath, nameof(path)); } return builder.AddJsonFile(s => diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationFileParser.cs b/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationFileParser.cs index 79a37d73ff8e65..18736057edfe54 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationFileParser.cs +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationFileParser.cs @@ -36,7 +36,7 @@ private IDictionary ParseStream(Stream input) { if (doc.RootElement.ValueKind != JsonValueKind.Object) { - throw new FormatException(Resources.FormatError_UnsupportedJSONToken(doc.RootElement.ValueKind)); + throw new FormatException(SR.Format(SR.Error_UnsupportedJSONToken, doc.RootElement.ValueKind)); } VisitElement(doc.RootElement); } @@ -78,13 +78,13 @@ private void VisitValue(JsonElement value) var key = _currentPath; if (_data.ContainsKey(key)) { - throw new FormatException(Resources.FormatError_KeyIsDuplicated(key)); + throw new FormatException(SR.Format(SR.Error_KeyIsDuplicated, key)); } _data[key] = value.ToString(); break; default: - throw new FormatException(Resources.FormatError_UnsupportedJSONToken(value.ValueKind)); + throw new FormatException(SR.Format(SR.Error_UnsupportedJSONToken, value.ValueKind)); } } diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationProvider.cs b/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationProvider.cs index e629a64250a005..f179001f10329f 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationProvider.cs +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/src/JsonConfigurationProvider.cs @@ -32,7 +32,7 @@ public override void Load(Stream stream) } catch (JsonException e) { - throw new FormatException(Resources.Error_JSONParseError, e); + throw new FormatException(SR.Error_JSONParseError, e); } } } diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/src/Microsoft.Extensions.Configuration.Json.csproj b/src/libraries/Microsoft.Extensions.Configuration.Json/src/Microsoft.Extensions.Configuration.Json.csproj index 61d76b7820c27d..ec5e5086f5191b 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/src/Microsoft.Extensions.Configuration.Json.csproj +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/src/Microsoft.Extensions.Configuration.Json.csproj @@ -1,24 +1,29 @@  - netstandard2.0;$(DefaultNetCoreTargetFramework) - $(DefaultNetCoreTargetFramework) + $(NetCoreAppCurrent);netstandard2.0 true $(NoWarn);3021 + true - - - - + + + + + + + + + + - - + diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/src/Properties/InternalsVisibleTo.cs b/src/libraries/Microsoft.Extensions.Configuration.Json/src/Properties/InternalsVisibleTo.cs new file mode 100644 index 00000000000000..0970d98a83e920 --- /dev/null +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/src/Properties/InternalsVisibleTo.cs @@ -0,0 +1,7 @@ +// 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. + +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Microsoft.Extensions.Configuration.Json.Tests, PublicKey=00240000048000009400000006020000002400005253413100040000010001004b86c4cb78549b34bab61a3b1800e23bfeb5b3ec390074041536a7e3cbd97f5f04cf0f857155a8928eaa29ebfd11cfbbad3ba70efea7bda3226c6a8d370a4cd303f714486b6ebc225985a638471e6ef571cc92a4613c00b8fa65d61ccee0cbe5f36330c9a01f4183559f1bef24cc2917c6d913e3a541333a1d05d9bed22b38cb")] diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/tests/JsonConfigurationTest.cs b/src/libraries/Microsoft.Extensions.Configuration.Json/tests/JsonConfigurationTest.cs index 0539ed16c70743..c45f0ade6f0e78 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/tests/JsonConfigurationTest.cs +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/tests/JsonConfigurationTest.cs @@ -181,7 +181,7 @@ public void ThrowExceptionWhenMissingCurlyBeforeFinishParsing() [Fact] public void ThrowExceptionWhenPassingNullAsFilePath() { - var expectedMsg = new ArgumentException(Resources.Error_InvalidFilePath, "path").Message; + var expectedMsg = new ArgumentException(SR.Error_InvalidFilePath, "path").Message; var exception = Assert.Throws(() => new ConfigurationBuilder().AddJsonFile(path: null)); @@ -191,7 +191,7 @@ public void ThrowExceptionWhenPassingNullAsFilePath() [Fact] public void ThrowExceptionWhenPassingEmptyStringAsFilePath() { - var expectedMsg = new ArgumentException(Resources.Error_InvalidFilePath, "path").Message; + var expectedMsg = new ArgumentException(SR.Error_InvalidFilePath, "path").Message; var exception = Assert.Throws(() => new ConfigurationBuilder().AddJsonFile(string.Empty)); diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj b/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj index 94bd9498e551d2..fa4a9e15cc7a4a 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj @@ -2,21 +2,23 @@ $(NetCoreAppCurrent);$(NetFrameworkCurrent) + true - - + + Microsoft.Extensions.Configuration\tests\ConfigurationProviderTestBase.cs + + + Microsoft.Extensions.Configuration\tests\Common\ConfigurationProviderExtensions.cs + + + Microsoft.Extensions.Configuration\tests\Common\TestStreamHelpers.cs + - - - - - - - + diff --git a/src/libraries/pkg/baseline/packageIndex.json b/src/libraries/pkg/baseline/packageIndex.json index 8ea122447fc6d3..353db9d6bf70ad 100644 --- a/src/libraries/pkg/baseline/packageIndex.json +++ b/src/libraries/pkg/baseline/packageIndex.json @@ -365,6 +365,33 @@ "5.0.0.0": "5.0.0" } }, + "Microsoft.Extensions.Configuration.Json": { + "StableVersions": [ + "1.0.0", + "1.0.1", + "1.0.2", + "1.1.0", + "1.1.1", + "1.1.2", + "2.0.0", + "2.0.1", + "2.0.2", + "2.1.0", + "2.1.1", + "2.2.0", + "3.0.0", + "3.0.1", + "3.0.2", + "3.0.3", + "3.1.0", + "3.1.1", + "3.1.2" + ], + "InboxOn": {}, + "AssemblyVersionInPackageVersion": { + "5.0.0.0": "5.0.0" + } + }, "Microsoft.Extensions.DependencyInjection": { "StableVersions": [ "1.0.0",