Skip to content

Commit 5135afc

Browse files
committed
make LastVersionOnMasterFinder return a date
1 parent f32a3cc commit 5135afc

File tree

7 files changed

+15
-57
lines changed

7 files changed

+15
-57
lines changed

GitVersionCore.Tests/LastVersionOnMasterFinderTests.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,7 @@ static void EnsureMetaDataMatch(CommitCountingRepoFixture fixture, string branch
8585

8686
var commit = referenceCommitFinder(fixture.Repository);
8787
var releaseDate = LastVersionOnMasterFinder.Execute(fixture.Repository, commit);
88-
releaseDate.OriginalCommitSha.ShouldBe(commit.Sha);
89-
releaseDate.OriginalDate.ShouldBe(commit.Committer.When);
88+
releaseDate.ShouldBe(commit.Committer.When);
9089
}
9190

9291
void DropTags(IRepository repo, params string[] names)

GitVersionCore/LastVersionOnMasterFinder.cs

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,11 @@
44

55
namespace GitVersion
66
{
7+
using System;
8+
79
public class LastVersionOnMasterFinder
810
{
9-
public static ReleaseDate Execute(IRepository repo, Commit commit)
11+
public static DateTimeOffset Execute(IRepository repo, Commit commit)
1012
{
1113
//dont need an if for release since we want the current date for a release branch
1214
if (
@@ -15,17 +17,9 @@ public static ReleaseDate Execute(IRepository repo, Commit commit)
1517
)
1618
{
1719
var vp = FindLatestStableTaggedCommitReachableFrom(repo, commit);
18-
return new ReleaseDate
19-
{
20-
OriginalDate = vp.When(),
21-
OriginalCommitSha = vp.Sha,
22-
};
20+
return vp.When();
2321
}
24-
return new ReleaseDate
25-
{
26-
OriginalDate = commit.When(),
27-
OriginalCommitSha = commit.Sha,
28-
};
22+
return commit.When();
2923
}
3024

3125
static Commit FindLatestStableTaggedCommitReachableFrom(IRepository repo, Commit commit)

GitVersionCore/ReleaseDate.cs

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,8 @@
11
using System;
2-
using GitVersion;
32

4-
public class ReleaseDate : IEquatable<ReleaseDate>
3+
public class ReleaseDate
54
{
65
public DateTimeOffset OriginalDate;
76
public string OriginalCommitSha;
87

9-
static LambdaEqualityHelper<ReleaseDate> equalityHelper =
10-
new LambdaEqualityHelper<ReleaseDate>(x => x.OriginalDate, x => x.OriginalCommitSha);
11-
12-
public override bool Equals(object obj)
13-
{
14-
return Equals(obj as ReleaseDate);
15-
}
16-
17-
public bool Equals(ReleaseDate other)
18-
{
19-
return equalityHelper.Equals(this, other);
20-
}
21-
22-
public override int GetHashCode()
23-
{
24-
return equalityHelper.GetHashCode(this);
25-
}
26-
27-
public static bool operator ==(ReleaseDate left, ReleaseDate right)
28-
{
29-
return Equals(left, right);
30-
}
31-
32-
public static bool operator !=(ReleaseDate left, ReleaseDate right)
33-
{
34-
return !Equals(left, right);
35-
}
368
}

GitVersionTask.Tests/AssemblyInfoBuilderTests.cs

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,7 @@ public void VerifyCreatedCode()
3434
CachedVersion = new CachedVersion
3535
{
3636
SemanticVersion = semanticVersion,
37-
ReleaseDate = new ReleaseDate
38-
{
39-
OriginalCommitSha = "originalCommitSha",
40-
OriginalDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z"),
41-
}
37+
MasterReleaseDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z"),
4238
}
4339
};
4440
var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText();
@@ -91,11 +87,7 @@ static void VerifyAssemblyVersion(AssemblyVersioningScheme avs)
9187
CachedVersion = new CachedVersion
9288
{
9389
SemanticVersion = semanticVersion,
94-
ReleaseDate = new ReleaseDate
95-
{
96-
OriginalCommitSha = "originalCommitSha",
97-
OriginalDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z"),
98-
}
90+
MasterReleaseDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z")
9991
},
10092
AssemblyVersioningScheme = avs,
10193
};

GitVersionTask/AssemblyInfoBuilder/AssemblyInfoBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ static class GitVersionInformation
4141
4242
4343
", semanticVersion.GetAssemblyVersion(AssemblyVersioningScheme), string.Format("{0}.{1}.{2}.0", semanticVersion.Major, semanticVersion.Minor, semanticVersion.Patch), semanticVersion.ToString("i"),
44-
CachedVersion.ReleaseDate.OriginalDate.UtcDateTime.ToString("yyyy-MM-dd"),
44+
CachedVersion.MasterReleaseDate.UtcDateTime.ToString("yyyy-MM-dd"),
4545
semanticVersion.BuildMetaData.CommitDate.UtcDateTime.ToString("yyyy-MM-dd"),
4646
GenerateVariableMembers(vars));
4747

GitVersionTask/CachedVersion.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
using GitVersion;
1+
using System;
2+
using GitVersion;
23

34
public class CachedVersion
45
{
56
public SemanticVersion SemanticVersion;
67
public long Timestamp;
7-
public ReleaseDate ReleaseDate;
8+
public DateTimeOffset MasterReleaseDate;
89
}

GitVersionTask/VersionCache.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public static CachedVersion GetVersion(string gitDirectory)
1818
{
1919
Logger.WriteInfo("Change detected. flushing cache.");
2020
cachedVersion.SemanticVersion = GitVersionFinder.GetSemanticVersion(repo);
21-
cachedVersion.ReleaseDate = LastVersionOnMasterFinder.Execute(repo, repo.Head.Tip);
21+
cachedVersion.MasterReleaseDate = LastVersionOnMasterFinder.Execute(repo, repo.Head.Tip);
2222
}
2323
return cachedVersion;
2424
}
@@ -27,7 +27,7 @@ public static CachedVersion GetVersion(string gitDirectory)
2727
return versionCacheVersions[key] = new CachedVersion
2828
{
2929
SemanticVersion = GitVersionFinder.GetSemanticVersion(repo),
30-
ReleaseDate = LastVersionOnMasterFinder.Execute(repo,repo.Head.Tip),
30+
MasterReleaseDate = LastVersionOnMasterFinder.Execute(repo,repo.Head.Tip),
3131
Timestamp = ticks
3232
};
3333

0 commit comments

Comments
 (0)