Skip to content

Commit 5aa83e5

Browse files
Merge pull request #62 from petabridge/dev
v0.1.6 Release Notes
2 parents fdbb3a1 + 17c6997 commit 5aa83e5

File tree

3 files changed

+23
-7
lines changed

3 files changed

+23
-7
lines changed

RELEASE_NOTES.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1-
#### 0.1.5 August 30 2019 ####
2-
Bugfix release for Incrementalist v0.1.4
1+
#### 0.1.6 August 30 2019 ####
2+
Bugfix release for Incrementalist v0.1.4-v0.1.5
33

44
Fixed [Bug: doesn't detect that project has changed when embedded resource has been modified](https://github.com/petabridge/Incrementalist/issues/56).
55

6-
As it turns out, Roslyn isn't able to detect non-code files embedded as resources into projects - so we search to see if any modified files are contained in the same folder as solution projects and we'll now mark the project as updated in the event that it contains a modified file.
6+
As it turns out, Roslyn isn't able to detect non-code files embedded as resources into projects - so we search to see if any modified files are contained in the same folder as solution projects and we'll now mark the project as updated in the event that it contains a modified file.
7+
8+
Fixed [issue with detecting transitive dependencies in multi-targeted builds](https://github.com/petabridge/Incrementalist/issues/55).

src/Incrementalist/ProjectSystem/Cmds/ComputeDependencyGraphCmd.cs

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,19 @@ protected override async Task<Dictionary<string, ICollection<string>>> ProcessIm
3535
if (affectedSlnFiles.Count == 0)
3636
return new Dictionary<string, ICollection<string>>();
3737

38+
/*
39+
* Special case: in instances where the project files themselves are modified,
40+
* we there might be multiple ProjectIds in the case of a multi-targeted solution.
41+
*
42+
* We have to gather up each unique project file separately in this case.
43+
*/
44+
var additionalProjectIds = new List<ProjectId>();
45+
if(affectedSlnFiles.Any(x => x.Value.FileType == FileType.Project))
46+
{
47+
foreach(var proj in affectedSlnFiles.Where(x => x.Value.FileType == FileType.Project))
48+
additionalProjectIds.AddRange(_solution.Projects.Where(x => x.FilePath.Equals(proj.Key)).Select(x => x.Id));
49+
}
50+
3851
var ds = _solution.GetProjectDependencyGraph();
3952

4053
// Special case: if the solution itself is modified, return all projects
@@ -48,7 +61,7 @@ string GetProjectFilePath(ProjectId project)
4861
return _solution.GetProject(project).FilePath;
4962
}
5063

51-
var uniqueProjectIds = affectedSlnFiles.Select(x => x.Value.ProjectId).Distinct().ToList();
64+
var uniqueProjectIds = affectedSlnFiles.Select(x => x.Value.ProjectId).Concat(additionalProjectIds).Distinct().ToList();
5265
var graphs = uniqueProjectIds.ToDictionary(x => x,
5366
v => ds.GetProjectsThatTransitivelyDependOnThisProject(v).ToList());
5467

src/common.props

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,11 @@
22
<PropertyGroup>
33
<Copyright>Copyright © 2015-2019 Petabridge</Copyright>
44
<Authors>Petabridge</Authors>
5-
<VersionPrefix>0.1.5</VersionPrefix>
6-
<PackageReleaseNotes>Bugfix release for Incrementalist v0.1.4
5+
<VersionPrefix>0.1.6</VersionPrefix>
6+
<PackageReleaseNotes>Bugfix release for Incrementalist v0.1.4-v0.1.5
77
Fixed [Bug: doesn't detect that project has changed when embedded resource has been modified](https://github.com/petabridge/Incrementalist/issues/56).
8-
As it turns out, Roslyn isn't able to detect non-code files embedded as resources into projects - so we search to see if any modified files are contained in the same folder as solution projects and we'll now mark the project as updated in the event that it contains a modified file.</PackageReleaseNotes>
8+
As it turns out, Roslyn isn't able to detect non-code files embedded as resources into projects - so we search to see if any modified files are contained in the same folder as solution projects and we'll now mark the project as updated in the event that it contains a modified file.
9+
Fixed [issue with detecting transitive dependencies in multi-targeted builds](https://github.com/petabridge/Incrementalist/issues/55).</PackageReleaseNotes>
910
<tags>build, msbuild, incremental build, roslyn, git</tags>
1011
<PackageIconUrl>
1112
https://petabridge.com/images/logo.png

0 commit comments

Comments
 (0)