-
Notifications
You must be signed in to change notification settings - Fork 7
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
Initial multi-root support #121
Conversation
025fdbe
to
c01b66e
Compare
The file events apparently did not fire consistently fast enough on CI.
c01b66e
to
4dcb037
Compare
4dcb037
to
b5d224b
Compare
Rebased, should be ready for review now. Requires #125. |
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.
LGTM
@@ -84,7 +84,7 @@ Since CodeChecker-related paths vary greatly between systems, the following sett | |||
| Name | Description | | |||
| --- | --- | | |||
| CodeChecker > Backend > Output folder <br> (default: `${workspaceFolder}/.codechecker`) | The output folder where the CodeChecker analysis files are stored. | | |||
| CodeChecker > Backend > Compilation database path <br> (default: *(empty)*) | Path to a custom compilation database, in case of a custom build system. The database setup dialog sets the path for the current workspace only. | | |||
| CodeChecker > Backend > Compilation database path <br> (default: *(empty)*) | Path to a custom compilation database, in case of a custom build system. The database setup dialog sets the path for the current workspace only. Leave blank to use the database in CodeChecker's output folder, or to use CodeChecker's autodetection for multi-root workspaces. | |
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.
It is not entirely clear which compilation database will be used when the field is empty.
@@ -57,7 +57,7 @@ export class NotificationHandler { | |||
break; | |||
} | |||
|
|||
const choiceCommand = options.choices!.find((command) => command.title === choice); | |||
const choiceCommand = options.choices?.find((command) => command.title === choice); |
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.
From non-null to optional?
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.
Closing the popup via the X returns choice 'undefined', apparently.
Requires #123. Reference: #113, Ericsson/codechecker#3708
Adds support for CodeChecker 6.22's automatic compilation database detection. If no comp.db. is specified, and there is none in CodeChecker's output folder, the extension will use CodeChecker's autodetection (for 6.22 and above). For 6.21, and the mentioned cases, the behavior remains the same.
Remaining tasks:
CodeChecker analyze
can only accept a single file or folder as input, so for multiple files we'd need to autodetect common folders, or run the analysis for each file separately.CodeChecker analyze
if it does not detect a compilation database. Currently it returns code 0, so we'd need to read its output to detect the failure.