Skip to content

Conversation

@T-Gro
Copy link
Member

@T-Gro T-Gro commented Dec 20, 2022

If the same file was listed twice for compilation (typically = text-based merge conflict resolution), the following happened:

  • Build of that project worked fine
  • IDE for that project worked fine
  • Build for referencing projects worked fine
  • IDE features for referencing projects failed with "Object reference" after first consumption of sigdata , and language features like intellisense,tooltips, colorization stopped working

There was no obvious clue about the real error coming from a different project.
Since regular build worked, the error creation went trough CI just fine and it only started to make troubles in IDE scenarios (= days later, different users of the project).

The following has been done:

  • Prevent IDE error in the first place by deduplicating files and keeping the first occurence
  • Report warning diagnostics in case of fsc.exe build when a duplicate is detected
  • Report warning in case of service build
  • Fix bug in componenttest framework for .fsi compilation which have been there and caused some tests to turn .fsi into .fs (therefore testing totally different files)

Evidence:
image

- Prevent IDE error in the first place
- Report diagnostics in case of fsc.exe build
- Report warning in case of service build
- Fix bug in componenttest framework for .fsi compilation
@T-Gro T-Gro requested a review from a team as a code owner December 20, 2022 13:55
vzarytovskii
vzarytovskii previously approved these changes Dec 20, 2022
0101
0101 previously approved these changes Dec 20, 2022
@T-Gro
Copy link
Member Author

T-Gro commented Dec 20, 2022

CompilerOptions\fsc*gccerrors* (1) -- failed ;; will check it.

@T-Gro T-Gro dismissed stale reviews from 0101 and vzarytovskii via 322daea December 27, 2022 12:02
@T-Gro T-Gro requested a review from vzarytovskii December 27, 2022 17:31
@T-Gro T-Gro merged commit 1821ffc into main Jan 2, 2023
@T-Gro T-Gro deleted the prevent-ide-crash-duplicate-file-in-fsproj branch January 2, 2023 11:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants