-
Notifications
You must be signed in to change notification settings - Fork 215
Analyse and log project(s) analysis failure #3332
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
…t on non windows platform
…g mode triggers log to filefeat: rename dev mode to diag
…ator/stryker-net into LogAnalysisOnFailure
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces diagnostic capabilities to help users troubleshoot project analysis failures. The main addition is a --diag command line option that supersedes --dev-mode, along with improved logging and failure hints when project analysis encounters issues.
Key Changes:
- Adds
--diagcommand line option with enhanced diagnostics and detailed logging - Provides per-project analysis status reporting with actionable suggestions
- Adds "nunit" to known test framework names to handle recent case sensitivity changes
Reviewed Changes
Copilot reviewed 20 out of 20 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| DiagModeInput.cs | New input class for the diagnostic mode option |
| DevModeInput.cs | Removed - functionality replaced by DiagModeInput |
| StrykerOptions.cs | Renamed DevMode property to DiagMode |
| StrykerInputs.cs | Added DiagModeInput property while maintaining DevModeInput for backward compatibility |
| IStrykerOptions.cs | Updated interface to use DiagMode instead of DevMode |
| InputFileResolver.cs | Enhanced logging for project analysis failures with diagnostic hints |
| InitialBuildProcess.cs | Added platform check for .NET Framework projects |
| IAnalyzerResultExtensions.cs | Added "nunit" to known test packages array |
| VsTestContextInformation.cs | Updated to use DiagMode property |
| CsharpMutationProcess.cs | Updated to use DiagMode property |
| CsharpCompilingProcess.cs | Updated to use DiagMode property |
| CommandLineConfigReader.cs | Added CLI registration for --diag option |
| LoggingInitializer.cs | Updated to enable file logging in diagnostic mode |
| Multiple test files | Updated tests to use DiagMode instead of DevMode |
Comments suppressed due to low confidence (1)
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs:1
- The extra space before 'DiagModeInput' is inconsistent with the formatting of other lines. Remove the extra space to maintain consistent indentation.
using System;
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
2a3135e to
05a1f12
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 20 out of 20 changed files in this pull request and generated 4 comments.
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
…ator/stryker-net into LogAnalysisOnFailure
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 20 out of 20 changed files in this pull request and generated 3 comments.
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 20 out of 20 changed files in this pull request and generated 1 comment.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 20 out of 20 changed files in this pull request and generated 4 comments.
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
src/Stryker.Core/Stryker.Core/Initialisation/InputFileResolver.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 23 out of 23 changed files in this pull request and generated 3 comments.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 26 out of 26 changed files in this pull request and generated 3 comments.
|



Main feature: provide hints and details when project analysis fails. This is a first version that could improve via heuristics gain via user feedbacks. Current version provides hint when there is no test project detected.
This PR provides the following changes:
--diagoption to have details--diagcommand line option which supersedes--dev-mode. Behavior is the same. Option's help string has been updated to reflect actual behaviournunitto known test framework names to handle the recent case change in the projectFixes
Note: most of the work for this PR has been done via Rider on macOS, but tests were conduced both on macOS and Windows.