dotnet / dotnet/project-system

FastUpToDate: Up-to-date check threw System.ArgumentNullException for wix4 project

Open
#9,348 5 comments 6 reactions 1 assignee Claimed by @drewnoakes View on GitHub
Feature-Up-to-date Triage-Approved
Dominant language
C#
Stars
1k
Forks
415
PR merge metrics
No merged PRs in 30d

Description

## Visual Studio Version
Version 17.7.7

## Summary
[TestWix4Package.zip](https://github.com/dotnet/project-system/files/13533595/TestWix4Package.zip)

For wix4 project, FastUpToDate throws below exception.
Looking on place, MsBuildProjectDirectory is null, albeit ProjectTargetPath contains correct value.

This is in MSVS output

```
Build started...
1>FastUpToDate: Up-to-date check threw an exception. Not up-to-date. System.ArgumentNullException: Value cannot be null.
1>Parameter name: path1
1> at System.IO.Path.Combine(String path1, String path2)
1> at Microsoft.VisualStudio.ProjectSystem.UpToDate.BuildUpToDateCheck.<>c__DisplayClass44_0.<g__CheckAsync|0>d.MoveNext() (TestWix4Package)
1>FastUpToDate: Up-to-date check completed in 67.5 ms (TestWix4Package)
```

https://github.com/dotnet/project-system/blob/main/src/Microsoft.VisualStudio.ProjectSystem.Managed.VS/ProjectSystem/VS/UpToDate/BuildUpToDateCheck.cs#L1084

## Steps to Reproduce

1. Create new project from standard template: "MSI Package (Wix v4)"
2. Try to build that project

## Expected Behavior

No exception, and fastuptodate works for wix projects

## Actual Behavior

Since fastcheck doesn't work, projects are constantly rebuilds
[TestWix4Package.zip](https://github.com/dotnet/project-system/files/13533592/TestWix4Package.zip)

## User Impact

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.