Skip to content

Commit db28fdb

Browse files
committed
fix nullable
1 parent 037b0cb commit db28fdb

6 files changed

Lines changed: 26 additions & 22 deletions

File tree

src/NuGet.Core/NuGet.ProjectModel/PackageSpecUtility.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public static class PackageSpecUtility
1111
/// <summary>
1212
/// Apply a snapshot value.
1313
/// </summary>
14-
public static NuGetVersion SpecifySnapshot(string version, string snapshotValue)
14+
public static NuGetVersion SpecifySnapshot(string version, string? snapshotValue)
1515
{
1616
// Snapshots should be in the form 1.0.0-*, 1.0.0-beta-*, or 1.0.0-rc.*
1717
// Snapshots may not contain metadata such as 1.0.0+5.* or be stable versions such as 1.0.*
@@ -33,7 +33,7 @@ public static NuGetVersion SpecifySnapshot(string version, string snapshotValue)
3333
/// <summary>
3434
/// True if the string is a snapshot version.
3535
/// </summary>
36-
public static bool IsSnapshotVersion(string version)
36+
public static bool IsSnapshotVersion(string? version)
3737
{
3838
if (version != null
3939
&& version.EndsWith("*", StringComparison.Ordinal)
@@ -43,8 +43,7 @@ public static bool IsSnapshotVersion(string version)
4343
|| (version.EndsWith(".*", StringComparison.Ordinal))))
4444
{
4545
// Verify the version is valid
46-
NuGetVersion parsed = null;
47-
return NuGetVersion.TryParse(version.Substring(0, version.Length - 2), out parsed);
46+
return NuGetVersion.TryParse(version.Substring(0, version.Length - 2), out _);
4847
}
4948

5049
return false;

src/NuGet.Core/NuGet.ProjectModel/PackagesConfigProjectRestoreMetadata.cs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ public class PackagesConfigProjectRestoreMetadata : ProjectRestoreMetadata
1111
/// <summary>
1212
/// Full path to the packages.config file, if it exists. Only valid when ProjectStyle is PackagesConfig.
1313
/// </summary>
14-
public string PackagesConfigPath { get; set; }
14+
public string? PackagesConfigPath { get; set; }
1515

1616
/// <summary>
1717
/// User packages repository path.
1818
/// </summary>
19-
public string RepositoryPath { get; set; }
19+
public string? RepositoryPath { get; set; }
2020

2121
public override int GetHashCode()
2222
{
@@ -28,13 +28,18 @@ public override int GetHashCode()
2828
return hashCode.CombinedHash;
2929
}
3030

31-
public override bool Equals(object obj)
31+
public override bool Equals(object? obj)
3232
{
3333
return Equals(obj as PackagesConfigProjectRestoreMetadata);
3434
}
3535

36-
public bool Equals(PackagesConfigProjectRestoreMetadata obj)
36+
public bool Equals(PackagesConfigProjectRestoreMetadata? obj)
3737
{
38+
if (obj == null)
39+
{
40+
return false;
41+
}
42+
3843
return base.Equals(obj) &&
3944
PathUtility.GetStringComparerBasedOnOS().Equals(PackagesConfigPath, obj.PackagesConfigPath);
4045
}

src/NuGet.Core/NuGet.ProjectModel/PublicAPI.Shipped.txt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -324,12 +324,12 @@ NuGet.ProjectModel.PackageSpecUtility
324324
NuGet.ProjectModel.PackageSpecWriter
325325
NuGet.ProjectModel.PackageSpecWriter.PackageSpecWriter() -> void
326326
NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata
327-
~NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.Equals(NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata obj) -> bool
328-
~NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.PackagesConfigPath.get -> string
329-
~NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.PackagesConfigPath.set -> void
327+
NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.Equals(NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata? obj) -> bool
328+
NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.PackagesConfigPath.get -> string?
329+
NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.PackagesConfigPath.set -> void
330330
NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.PackagesConfigProjectRestoreMetadata() -> void
331-
~NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.RepositoryPath.get -> string
332-
~NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.RepositoryPath.set -> void
331+
NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.RepositoryPath.get -> string?
332+
NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.RepositoryPath.set -> void
333333
NuGet.ProjectModel.PackagesLockFile
334334
~NuGet.ProjectModel.PackagesLockFile.Equals(NuGet.ProjectModel.PackagesLockFile other) -> bool
335335
NuGet.ProjectModel.PackagesLockFile.PackagesLockFile() -> void
@@ -563,8 +563,8 @@ override NuGet.ProjectModel.LockFileTargetLibrary.Equals(object? obj) -> bool
563563
override NuGet.ProjectModel.LockFileTargetLibrary.GetHashCode() -> int
564564
~override NuGet.ProjectModel.PackageSpec.Equals(object obj) -> bool
565565
override NuGet.ProjectModel.PackageSpec.GetHashCode() -> int
566-
~override NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.Clone() -> NuGet.ProjectModel.ProjectRestoreMetadata
567-
~override NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.Equals(object obj) -> bool
566+
override NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.Clone() -> NuGet.ProjectModel.ProjectRestoreMetadata!
567+
override NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.Equals(object? obj) -> bool
568568
override NuGet.ProjectModel.PackagesConfigProjectRestoreMetadata.GetHashCode() -> int
569569
~override NuGet.ProjectModel.PackagesLockFile.Equals(object obj) -> bool
570570
override NuGet.ProjectModel.PackagesLockFile.GetHashCode() -> int
@@ -630,8 +630,8 @@ static NuGet.ProjectModel.PackageSpecExtensions.GetTargetFramework(this NuGet.Pr
630630
~static NuGet.ProjectModel.PackageSpecOperations.AddOrUpdateDependency(NuGet.ProjectModel.PackageSpec spec, NuGet.Packaging.Core.PackageIdentity identity, System.Collections.Generic.IEnumerable<NuGet.Frameworks.NuGetFramework> frameworksToAdd) -> void
631631
~static NuGet.ProjectModel.PackageSpecOperations.HasPackage(NuGet.ProjectModel.PackageSpec spec, string packageId) -> bool
632632
~static NuGet.ProjectModel.PackageSpecOperations.RemoveDependency(NuGet.ProjectModel.PackageSpec spec, string packageId) -> void
633-
~static NuGet.ProjectModel.PackageSpecUtility.IsSnapshotVersion(string version) -> bool
634-
~static NuGet.ProjectModel.PackageSpecUtility.SpecifySnapshot(string version, string snapshotValue) -> NuGet.Versioning.NuGetVersion
633+
static NuGet.ProjectModel.PackageSpecUtility.IsSnapshotVersion(string? version) -> bool
634+
static NuGet.ProjectModel.PackageSpecUtility.SpecifySnapshot(string! version, string? snapshotValue) -> NuGet.Versioning.NuGetVersion!
635635
~static NuGet.ProjectModel.PackageSpecWriter.Write(NuGet.ProjectModel.PackageSpec packageSpec, NuGet.RuntimeModel.IObjectWriter writer) -> void
636636
~static NuGet.ProjectModel.PackagesLockFileFormat.Parse(string lockFileContent, NuGet.Common.ILogger log, string path) -> NuGet.ProjectModel.PackagesLockFile
637637
~static NuGet.ProjectModel.PackagesLockFileFormat.Parse(string lockFileContent, string path) -> NuGet.ProjectModel.PackagesLockFile

test/NuGet.Core.Tests/NuGet.Commands.Test/DotnetCliToolTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -330,7 +330,7 @@ public async Task DotnetCliTool_BasicToolRestore_DifferentVersionRanges()
330330
{
331331
var path = pathResolver.GetLockFilePath(
332332
"a",
333-
version.MinVersion,
333+
version.MinVersion!,
334334
NuGetFramework.Parse("netcoreapp1.0"));
335335

336336
Assert.True(File.Exists(path), $"{path} does not exist!");

test/NuGet.Core.Tests/NuGet.Commands.Test/WarningPropertiesTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,19 @@ public class WarningPropertiesTests
1515
[Fact]
1616
public void Constructor_WithNullNoWarn_Throws()
1717
{
18-
Assert.Throws<ArgumentNullException>(() => new WarningProperties(allWarningsAsErrors: true, noWarn: null, warningsAsErrors: new HashSet<NuGetLogCode>() { }, warningsNotAsErrors: new HashSet<NuGetLogCode>() { }));
18+
Assert.Throws<ArgumentNullException>(() => new WarningProperties(allWarningsAsErrors: true, noWarn: null!, warningsAsErrors: new HashSet<NuGetLogCode>() { }, warningsNotAsErrors: new HashSet<NuGetLogCode>() { }));
1919
}
2020

2121
[Fact]
2222
public void Constructor_WithNullWarningsAsErrors_Throws()
2323
{
24-
Assert.Throws<ArgumentNullException>(() => new WarningProperties(allWarningsAsErrors: true, noWarn: new HashSet<NuGetLogCode>() { }, warningsAsErrors: null, warningsNotAsErrors: new HashSet<NuGetLogCode>() { }));
24+
Assert.Throws<ArgumentNullException>(() => new WarningProperties(allWarningsAsErrors: true, noWarn: new HashSet<NuGetLogCode>() { }, warningsAsErrors: null!, warningsNotAsErrors: new HashSet<NuGetLogCode>() { }));
2525
}
2626

2727
[Fact]
2828
public void Constructor_WithNullWarningsNotAsErrors_Throws()
2929
{
30-
Assert.Throws<ArgumentNullException>(() => new WarningProperties(allWarningsAsErrors: true, noWarn: new HashSet<NuGetLogCode>() { }, warningsAsErrors: new HashSet<NuGetLogCode>() { }, warningsNotAsErrors: null));
30+
Assert.Throws<ArgumentNullException>(() => new WarningProperties(allWarningsAsErrors: true, noWarn: new HashSet<NuGetLogCode>() { }, warningsAsErrors: new HashSet<NuGetLogCode>() { }, warningsNotAsErrors: null!));
3131
}
3232

3333
[Fact]

test/NuGet.Core.Tests/NuGet.ProjectModel.Test/CentralTransitiveDependencyGroupTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public void CentralTransitiveDependencyGroup_ConstructorNullArgumentCheck(bool n
2424
var dependencies = nullDependencies ? null : Array.Empty<LibraryDependency>();
2525

2626
// Act + Assert
27-
Assert.Throws<ArgumentNullException>(() => new CentralTransitiveDependencyGroup(nuGetFramework, dependencies));
27+
Assert.Throws<ArgumentNullException>(() => new CentralTransitiveDependencyGroup(nuGetFramework!, dependencies!));
2828
}
2929

3030
[Fact]

0 commit comments

Comments
 (0)