Skip to content

Commit 6dd19ee

Browse files
authored
Move Utf8JsonStreamReader & extensions to NuGet Shared (#6834)
1 parent 32c56c9 commit 6dd19ee

26 files changed

Lines changed: 60 additions & 356 deletions

NuGet.sln

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Microsoft Visual Studio Solution File, Format Version 12.00
2-
# Visual Studio Version 17
3-
VisualStudioVersion = 17.0.31418.319
2+
# Visual Studio Version 18
3+
VisualStudioVersion = 18.3.11101.62
44
MinimumVisualStudioVersion = 10.0.40219.1
55
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{BD1946CE-5544-4F28-A04A-9C3D51113E1A}"
66
EndProject
@@ -45,6 +45,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{DE23D0
4545
build\Shared\TaskResult.cs = build\Shared\TaskResult.cs
4646
build\Shared\TypeExtensions.cs = build\Shared\TypeExtensions.cs
4747
build\Shared\TypeInfo.cs = build\Shared\TypeInfo.cs
48+
build\Shared\Utf8JsonReaderExtensions.cs = build\Shared\Utf8JsonReaderExtensions.cs
49+
build\Shared\Utf8JsonStreamReader.cs = build\Shared\Utf8JsonStreamReader.cs
50+
build\Shared\Utf8JsonStreamReaderConverter.cs = build\Shared\Utf8JsonStreamReaderConverter.cs
4851
build\Shared\vs-threading.MainThreadAssertingMethods.txt = build\Shared\vs-threading.MainThreadAssertingMethods.txt
4952
build\Shared\vs-threading.MainThreadSwitchingMethods.txt = build\Shared\vs-threading.MainThreadSwitchingMethods.txt
5053
build\Shared\vs-threading.MembersRequiringMainThread.txt = build\Shared\vs-threading.MembersRequiringMainThread.txt

src/NuGet.Clients/NuGet.PackageManagement.VisualStudio/Migrate/Utf8JsonReaderExtensions.cs renamed to build/Shared/Utf8JsonReaderExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
using System;
55
using System.Text.Json;
66

7-
namespace NuGet.PackageManagement.VisualStudio.Migrate
7+
namespace NuGet.Shared
88
{
99
internal static class Utf8JsonReaderExtensions
1010
{

src/NuGet.Core/NuGet.ProjectModel/Utf8JsonStreamReader.cs renamed to build/Shared/Utf8JsonStreamReader.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
using System.Text;
1212
using System.Text.Json;
1313

14-
namespace NuGet.ProjectModel
14+
namespace NuGet.Shared
1515
{
1616
/// <summary>
1717
/// This struct is used to read over a memeory stream in parts, in order to avoid reading the entire stream into memory.
@@ -270,7 +270,7 @@ internal bool ReadNextTokenAsBoolOrFalse()
270270
return false;
271271
}
272272

273-
internal bool ReadNextTokenAsBoolOrThrowAnException(byte[] propertyName)
273+
internal bool ReadNextTokenAsBoolOrThrowAnException(byte[] propertyName, string invalidAttributeString)
274274
{
275275
ThrowExceptionIfDisposed();
276276

@@ -282,7 +282,7 @@ internal bool ReadNextTokenAsBoolOrThrowAnException(byte[] propertyName)
282282
{
283283
throw new ArgumentException(
284284
string.Format(CultureInfo.CurrentCulture,
285-
Strings.Invalid_AttributeValue,
285+
invalidAttributeString,
286286
Encoding.UTF8.GetString(propertyName),
287287
_reader.ReadTokenAsString(),
288288
"false"));

src/NuGet.Core/NuGet.ProjectModel/Utf8JsonStreamReaderConverter.cs renamed to build/Shared/Utf8JsonStreamReaderConverter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Copyright (c) .NET Foundation. All rights reserved.
22
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3-
namespace NuGet.ProjectModel
3+
namespace NuGet.Shared
44
{
55
/// <summary>
66
/// An abstract class that defines a function for reading a <see cref="Utf8JsonStreamReader"/> into a <typeparamref name="T"/>

src/NuGet.Clients/NuGet.PackageManagement.VisualStudio/GlobalSuppressions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,4 +116,3 @@
116116
[assembly: SuppressMessage("Reliability", "CA2016:Forward the 'CancellationToken' parameter to methods", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.PackageManagement.VisualStudio.VsManagedLanguagesProjectSystemServices.GetPackageReferencesAsync(NuGet.Frameworks.NuGetFramework,System.Threading.CancellationToken)~System.Threading.Tasks.Task{System.Collections.Generic.IEnumerable{NuGet.LibraryModel.LibraryDependency}}")]
117117
[assembly: SuppressMessage("Reliability", "CA2016:Forward the 'CancellationToken' parameter to methods", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.PackageManagement.VisualStudio.VsManagedLanguagesProjectSystemServices.GetProjectReferencesAsync(NuGet.Common.ILogger,System.Threading.CancellationToken)~System.Threading.Tasks.Task{System.Collections.Generic.IEnumerable{NuGet.ProjectModel.ProjectRestoreReference}}")]
118118
[assembly: SuppressMessage("Reliability", "CA2016:Forward the 'CancellationToken' parameter to methods", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.PackageManagement.VisualStudio.VsMSBuildProjectSystem.SaveProjectAsync(System.Threading.CancellationToken)~System.Threading.Tasks.Task")]
119-
[assembly: SuppressMessage("Globalization", "CA1305:Specify IFormatProvider", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.PackageManagement.VisualStudio.Migrate.Utf8JsonReaderExtensions.ReadNumberAsString(System.Text.Json.Utf8JsonReader@)~System.String")]

src/NuGet.Clients/NuGet.PackageManagement.VisualStudio/Migrate/ProjectJsonMigrationCandidatePackageSpecReader.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
using NuGet.LibraryModel;
1515
using NuGet.ProjectModel;
1616
using NuGet.RuntimeModel;
17+
using NuGet.Shared;
1718
using NuGet.Versioning;
1819
using FileFormatException = NuGet.ProjectModel.FileFormatException;
1920

src/NuGet.Clients/NuGet.PackageManagement.VisualStudio/Migrate/Utf8JsonStreamReader.cs

Lines changed: 0 additions & 283 deletions
This file was deleted.

src/NuGet.Clients/NuGet.PackageManagement.VisualStudio/NuGet.PackageManagement.VisualStudio.csproj

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
33
<TargetFramework>$(NETFXTargetFramework)</TargetFramework>
44
<Shipping>true</Shipping>
@@ -73,6 +73,9 @@
7373
<Compile Include="$(SharedDirectory)\RequiredModifierAttributes.cs" />
7474
<Compile Include="$(SharedDirectory)\SharedExtensions.cs" />
7575
<Compile Include="$(SharedDirectory)\TaskResult.cs" />
76+
<Compile Include="$(SharedDirectory)\Utf8JsonReaderExtensions.cs" />
77+
<Compile Include="$(SharedDirectory)\Utf8JsonStreamReader.cs" />
78+
<Compile Include="$(SharedDirectory)\Utf8JsonStreamReaderConverter.cs" />
7679
<Compile Include="$(SharedDirectory)\XmlUtility.cs" />
7780
</ItemGroup>
7881

src/NuGet.Core/NuGet.ProjectModel/DependencyGraphSpec.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
using Newtonsoft.Json;
1212
using NuGet.Common;
1313
using NuGet.Packaging;
14+
using NuGet.Shared;
1415

1516
namespace NuGet.ProjectModel
1617
{

src/NuGet.Core/NuGet.ProjectModel/GlobalSuppressions.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,6 @@
7070
[assembly: SuppressMessage("Usage", "CA2227:Collection properties should be read only", Justification = "<Pending>", Scope = "member", Target = "~P:NuGet.ProjectModel.LockFile.CentralTransitiveDependencyGroups")]
7171
[assembly: SuppressMessage("Usage", "CA2227:Collection properties should be read only", Justification = "IReadOnlySet<T> is only available in .NET 5+, so we need to use a HashSet<T> here.", Scope = "member", Target = "~P:NuGet.ProjectModel.RestoreAuditProperties.SuppressedAdvisories")]
7272
[assembly: SuppressMessage("Design", "CA1031:Do not catch general exception types", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.ProjectModel.LockFileFormat.Utf8JsonRead(System.IO.Stream,NuGet.Common.ILogger,System.String,NuGet.ProjectModel.LockFileReadFlags)~NuGet.ProjectModel.LockFile")]
73-
[assembly: SuppressMessage("Performance", "CA1822:Mark members as static", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.ProjectModel.Utf8JsonStreamLockFileConverter.Read(NuGet.ProjectModel.Utf8JsonStreamReader@,NuGet.ProjectModel.LockFileReadFlags)~NuGet.ProjectModel.LockFile")]
7473
[assembly: SuppressMessage("Performance", "CA1822:Mark members as static", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.ProjectModel.PackageSpecReferenceDependencyProvider.AddLibraryProperties(NuGet.LibraryModel.Library,NuGet.ProjectModel.PackageSpec,NuGet.Frameworks.NuGetFramework)")]
7574
[assembly: SuppressMessage("Performance", "CA1822:Mark members as static", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.ProjectModel.ProjectRestoreMetadata.GetSources(System.Collections.Generic.IList{NuGet.Configuration.PackageSource})~System.Collections.Generic.HashSet{System.String}")]
76-
[assembly: SuppressMessage("Performance", "CA1822:Mark members as static", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.ProjectModel.Utf8JsonStreamLockFileTargetLibraryConverter.ReadPackageDependencyList(NuGet.ProjectModel.Utf8JsonStreamReader@)~System.Collections.Generic.IList{NuGet.Packaging.Core.PackageDependency}")]
77-
[assembly: SuppressMessage("Globalization", "CA1305:Specify IFormatProvider", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.ProjectModel.Utf8JsonReaderExtensions.ReadNumberAsString(System.Text.Json.Utf8JsonReader@)~System.String")]
7875
[assembly: SuppressMessage("Style", "IDE0051:Remove unused private members", Justification = "<Pending>", Scope = "member", Target = "~M:NuGet.ProjectModel.AssetsLogMessage.#ctor(NuGet.Common.LogLevel,NuGet.Common.NuGetLogCode,System.String,System.String,System.String,System.String,System.Collections.Generic.IReadOnlyList{System.String},System.Int32,System.Int32,System.Int32,System.Int32)")]

0 commit comments

Comments
 (0)