Skip to content

Commit cde118f

Browse files
committed
Imazen.Common: Fix API breakage w/ BuildDateAttribute and CommitAttribute
1 parent 85a529b commit cde118f

File tree

4 files changed

+68
-36
lines changed

4 files changed

+68
-36
lines changed

src/Imazen.Common/Imazen.Common.csproj

+2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
<EnableTrimAnalyzer Condition="'$(TargetFramework)' == 'net8.0'">true</EnableTrimAnalyzer>
1111
<EnableSingleFileAnalyzer Condition="'$(TargetFramework)' == 'net8.0'">true</EnableSingleFileAnalyzer>
1212
<EnableAotAnalyzer Condition="'$(TargetFramework)' == 'net8.0'">true</EnableAotAnalyzer>
13+
<EnablePackageValidation>true</EnablePackageValidation>
14+
<PackageValidationBaselineVersion>0.8.2</PackageValidationBaselineVersion>
1315
</PropertyGroup>
1416

1517
<Import Project="..\NugetPackages.targets" />
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,31 @@
1-
namespace Imazen.Common.Licensing
1+
namespace Imazen.Common.Licensing;
2+
3+
[AttributeUsage(AttributeTargets.Assembly)]
4+
[Obsolete("Use Imazen.Abstractions.AssemblyAttributes.BuildDateAttribute instead")]
5+
public class BuildDateAttribute : Attribute
26
{
3-
[AttributeUsage(AttributeTargets.Assembly)]
4-
[Obsolete("Use Imazen.Abstractions.AssemblyAttributes.BuildDateAttribute instead")]
5-
public class BuildDateAttribute : Abstractions.AssemblyAttributes.BuildDateAttribute
7+
public BuildDateAttribute() { Value = string.Empty; }
8+
public BuildDateAttribute(string buildDateStringRoundTrip) { Value = buildDateStringRoundTrip; }
9+
10+
public string Value { get; }
11+
12+
public DateTimeOffset? ValueDate
613
{
7-
public BuildDateAttribute()
8-
{ }
9-
public BuildDateAttribute(string buildDateStringRoundTrip):base(buildDateStringRoundTrip) { }
10-
14+
get
15+
{
16+
DateTimeOffset v;
17+
if (DateTimeOffset.TryParse(Value, null, System.Globalization.DateTimeStyles.RoundtripKind, out v))
18+
{
19+
return v;
20+
}else
21+
{
22+
return null;
23+
}
24+
}
25+
}
26+
27+
public override string ToString()
28+
{
29+
return Value;
1130
}
1231
}
+24-13
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,24 @@
1-
namespace Imazen.Common.Licensing
2-
{
3-
4-
[AttributeUsage(AttributeTargets.Assembly)]
5-
[Obsolete("Use Imazen.Abstractions.AssemblyAttributes.CommitAttribute instead")]
6-
public class CommitAttribute : Abstractions.AssemblyAttributes.CommitAttribute
7-
{
8-
public CommitAttribute()
9-
{}
10-
11-
public CommitAttribute(string commitId):base(commitId){}
12-
}
13-
}
1+
namespace Imazen.Common.Licensing;
2+
3+
[AttributeUsage(AttributeTargets.Assembly)]
4+
[Obsolete("Use Imazen.Abstractions.AssemblyAttributes.CommitAttribute instead")]
5+
public class CommitAttribute : Attribute
6+
{
7+
private readonly string commitId;
8+
public CommitAttribute()
9+
{
10+
commitId = string.Empty;
11+
}
12+
13+
public CommitAttribute(string commitId)
14+
{
15+
this.commitId = commitId;
16+
}
17+
18+
public string Value => commitId;
19+
20+
public override string ToString()
21+
{
22+
return commitId;
23+
}
24+
}

src/Imazen.Common/PublicAPI.Shipped.txt

+15-15
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ Imazen.Common.Extensibility.StreamCache.IStreamCacheInput
3636
Imazen.Common.Extensibility.StreamCache.IStreamCacheInput.Bytes.get -> System.ArraySegment<byte>
3737
Imazen.Common.Extensibility.StreamCache.IStreamCacheInput.ContentType.get -> string!
3838
Imazen.Common.Extensibility.StreamCache.IStreamCacheResult
39-
Imazen.Common.Extensibility.StreamCache.IStreamCacheResult.ContentType.get -> string!
39+
Imazen.Common.Extensibility.StreamCache.IStreamCacheResult.ContentType.get -> string?
4040
Imazen.Common.Extensibility.StreamCache.IStreamCacheResult.Data.get -> System.IO.Stream!
4141
Imazen.Common.Extensibility.StreamCache.IStreamCacheResult.Status.get -> string!
4242
Imazen.Common.Extensibility.StreamCache.StreamCacheInput
@@ -47,7 +47,7 @@ Imazen.Common.Extensibility.StreamCache.StreamCacheInput.ToIStreamCacheInput() -
4747
Imazen.Common.ExtensionMethods.DateTimeExtensions
4848
Imazen.Common.FileTypeDetection.FileTypeDetector
4949
Imazen.Common.FileTypeDetection.FileTypeDetector.FileTypeDetector() -> void
50-
Imazen.Common.FileTypeDetection.FileTypeDetector.GuessMimeType(byte[]! first12Bytes) -> string!
50+
Imazen.Common.FileTypeDetection.FileTypeDetector.GuessMimeType(byte[]! first12Bytes) -> string?
5151
Imazen.Common.Helpers.EncodingUtils
5252
Imazen.Common.Helpers.Signatures
5353
Imazen.Common.Instrumentation.Support.Clamping.SignificantDigitsClampingFloat
@@ -61,8 +61,8 @@ Imazen.Common.Instrumentation.Support.Clamping.SignificantDigitsClampingFloat.Si
6161
Imazen.Common.Instrumentation.Support.Clamping.SignificantDigitsClampingFloat.SignificantDigits.set -> void
6262
Imazen.Common.Instrumentation.Support.Clamping.SignificantDigitsClampingFloat.SignificantDigitsClampingFloat() -> void
6363
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator
64-
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator.AddString(string! key, string! value) -> void
65-
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator.GetInfo() -> System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string!, string!>>!
64+
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator.AddString(string! key, string? value) -> void
65+
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator.GetInfo() -> System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<string!, string?>>!
6666
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator.WithPrefix(string! prefix) -> Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator!
6767
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator.WithPrepend(bool prepend) -> Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoAccumulator!
6868
Imazen.Common.Instrumentation.Support.InfoAccumulators.IInfoProvider
@@ -79,17 +79,17 @@ Imazen.Common.Issues.IIssueProvider.GetIssues() -> System.Collections.Generic.IE
7979
Imazen.Common.Issues.IIssueReceiver
8080
Imazen.Common.Issues.IIssueReceiver.AcceptIssue(Imazen.Common.Issues.IIssue! i) -> void
8181
Imazen.Common.Issues.Issue
82-
Imazen.Common.Issues.Issue.Details.get -> string!
82+
Imazen.Common.Issues.Issue.Details.get -> string?
8383
Imazen.Common.Issues.Issue.Hash() -> int
8484
Imazen.Common.Issues.Issue.Issue() -> void
85-
Imazen.Common.Issues.Issue.Issue(string! message) -> void
86-
Imazen.Common.Issues.Issue.Issue(string! message, Imazen.Common.Issues.IssueSeverity severity) -> void
87-
Imazen.Common.Issues.Issue.Issue(string! message, string! details, Imazen.Common.Issues.IssueSeverity severity) -> void
88-
Imazen.Common.Issues.Issue.Issue(string! source, string! message, string! details, Imazen.Common.Issues.IssueSeverity severity) -> void
85+
Imazen.Common.Issues.Issue.Issue(string? message) -> void
86+
Imazen.Common.Issues.Issue.Issue(string? message, Imazen.Common.Issues.IssueSeverity severity) -> void
87+
Imazen.Common.Issues.Issue.Issue(string? message, string? details, Imazen.Common.Issues.IssueSeverity severity) -> void
88+
Imazen.Common.Issues.Issue.Issue(string? source, string? message, string? details, Imazen.Common.Issues.IssueSeverity severity) -> void
8989
Imazen.Common.Issues.Issue.Severity.get -> Imazen.Common.Issues.IssueSeverity
90-
Imazen.Common.Issues.Issue.Source.get -> string!
90+
Imazen.Common.Issues.Issue.Source.get -> string?
9191
Imazen.Common.Issues.Issue.Source.set -> void
92-
Imazen.Common.Issues.Issue.Summary.get -> string!
92+
Imazen.Common.Issues.Issue.Summary.get -> string?
9393
Imazen.Common.Issues.IssueSeverity
9494
Imazen.Common.Issues.IssueSeverity.ConfigurationError = 2 -> Imazen.Common.Issues.IssueSeverity
9595
Imazen.Common.Issues.IssueSeverity.Critical = 0 -> Imazen.Common.Issues.IssueSeverity
@@ -116,11 +116,11 @@ Imazen.Common.Licensing.ILicenseBlob.Fields.get -> Imazen.Common.Licensing.ILice
116116
Imazen.Common.Licensing.ILicenseBlob.Original.get -> string!
117117
Imazen.Common.Licensing.ILicenseBlob.Signature.get -> byte[]!
118118
Imazen.Common.Licensing.ILicenseChain
119-
Imazen.Common.Licensing.ILicenseChain.CachedLicense() -> Imazen.Common.Licensing.ILicenseBlob!
120-
Imazen.Common.Licensing.ILicenseChain.FetchedLicense() -> Imazen.Common.Licensing.ILicenseBlob!
119+
Imazen.Common.Licensing.ILicenseChain.CachedLicense() -> Imazen.Common.Licensing.ILicenseBlob?
120+
Imazen.Common.Licensing.ILicenseChain.FetchedLicense() -> Imazen.Common.Licensing.ILicenseBlob?
121121
Imazen.Common.Licensing.ILicenseChain.Id.get -> string!
122122
Imazen.Common.Licensing.ILicenseChain.IsRemote.get -> bool
123-
Imazen.Common.Licensing.ILicenseChain.LastFetchUrl() -> string!
123+
Imazen.Common.Licensing.ILicenseChain.LastFetchUrl() -> string?
124124
Imazen.Common.Licensing.ILicenseChain.Licenses() -> System.Collections.Generic.IEnumerable<Imazen.Common.Licensing.ILicenseBlob!>!
125125
Imazen.Common.Licensing.ILicenseChain.Shared.get -> bool
126126
Imazen.Common.Licensing.ILicenseChain.ToPublicString() -> string!
@@ -132,7 +132,7 @@ Imazen.Common.Licensing.ILicenseClock.GetUtcNow() -> System.DateTimeOffset
132132
Imazen.Common.Licensing.ILicenseClock.TicksPerSecond.get -> long
133133
Imazen.Common.Licensing.ILicenseDetails
134134
Imazen.Common.Licensing.ILicenseDetails.Expires.get -> System.DateTimeOffset?
135-
Imazen.Common.Licensing.ILicenseDetails.Get(string! key) -> string!
135+
Imazen.Common.Licensing.ILicenseDetails.Get(string! key) -> string?
136136
Imazen.Common.Licensing.ILicenseDetails.Id.get -> string!
137137
Imazen.Common.Licensing.ILicenseDetails.ImageflowExpires.get -> System.DateTimeOffset?
138138
Imazen.Common.Licensing.ILicenseDetails.Issued.get -> System.DateTimeOffset?

0 commit comments

Comments
 (0)