Skip to content

Commit eaae9ab

Browse files
author
Arvid Paeglit
committed
Merge branch 'master' into mini-dashboard-actions
# Conflicts: # src/deepcode/DeepCodeExtension.ts # src/deepcode/lib/modules/DeepCodeLib.ts
2 parents f06629c + ec67e36 commit eaae9ab

14 files changed

+286
-126
lines changed

package-lock.json

Lines changed: 42 additions & 37 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,10 @@
193193
{
194194
"command": "deepcode.login",
195195
"when": "!deepcode:loggedIn"
196+
},
197+
{
198+
"command": "deepcode.dcignore",
199+
"when": "!deepcode:error && deepcode:loggedIn && deepcode:uploadApproved && deepcode:workspaceFound"
196200
}
197201
]
198202
},
@@ -209,7 +213,13 @@
209213
},
210214
{
211215
"command": "deepcode.login",
212-
"title": "DeepCode login"
216+
"title": "DeepCode login",
217+
"icon": "$(log-in)"
218+
},
219+
{
220+
"command": "deepcode.dcignore",
221+
"title": "DeepCode create dcignore file",
222+
"icon": "$(new-file)"
213223
}
214224
]
215225
},
@@ -239,7 +249,8 @@
239249
"nock": "^12.0.3"
240250
},
241251
"dependencies": {
242-
"@deepcode/tsc": "^1.3.0",
252+
"@deepcode/tsc": "^1.3.1",
253+
"@deepcode/dcignore": "^1.0.2",
243254
"@types/lodash": "^4.14.159",
244255
"@types/mz": "^2.7.1",
245256
"ignore": "^5.1.8",

src/deepcode/DeepCodeExtension.ts

Lines changed: 55 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,14 @@ import {
88
DEEPCODE_START_COMMAND,
99
DEEPCODE_SETMODE_COMMAND,
1010
DEEPCODE_SETTINGS_COMMAND,
11+
DEEPCODE_DCIGNORE_COMMAND,
1112
DEEPCODE_LOGIN,
1213
DEEPCODE_APPROVE,
1314
DEEPCODE_OPEN_BROWSER,
1415
DEEPCODE_OPEN_LOCAL,
1516
} from "./constants/commands";
16-
import { openDeepcodeSettingsCommand } from "./utils/vscodeCommandsUtils";
17+
import { openDeepcodeSettingsCommand, createDCIgnoreCommand } from "./utils/vscodeCommandsUtils";
18+
import { errorsLogs } from "./messages/errorsServerLogMessages";
1719

1820
import {
1921
DEEPCODE_VIEW_SUPPORT,
@@ -23,24 +25,42 @@ import { SupportProvider } from "./view/SupportProvider";
2325
import { IssueProvider } from "./view/IssueProvider";
2426

2527
class DeepCodeExtension extends DeepCodeLib implements DeepCode.ExtensionInterface {
28+
private async executeCommand(
29+
name: string,
30+
fn: (...args: any[]) => Promise<any>,
31+
...args: any[]
32+
): Promise<any> {
33+
try {
34+
await fn(...args);
35+
} catch (error) {
36+
this.processError(error, {
37+
message: errorsLogs.command(name),
38+
});
39+
}
40+
}
41+
2642
public activate(context: vscode.ExtensionContext): void {
2743
this.statusBarItem.show();
2844

2945
context.subscriptions.push(
3046
vscode.commands.registerCommand(
3147
DEEPCODE_OPEN_BROWSER,
32-
(url: string) => open(url)
48+
this.executeCommand.bind(
49+
this,
50+
DEEPCODE_OPEN_BROWSER,
51+
(url: string) => open(url)
52+
)
3353
)
3454
);
3555

3656
context.subscriptions.push(
3757
vscode.commands.registerCommand(
3858
DEEPCODE_OPEN_LOCAL,
3959
(path: vscode.Uri, range?: vscode.Range) => {
40-
console.log("DEEPCODE_OPEN_LOCAL",path.toString());
4160
vscode.window.showTextDocument(path, { selection: range }).then(
42-
(f) => console.log(f),
43-
(err) => console.error(err)
61+
() => {}, (err) => this.processError(err, {
62+
message: errorsLogs.command(DEEPCODE_OPEN_LOCAL),
63+
})
4464
);
4565
}
4666
)
@@ -49,21 +69,33 @@ class DeepCodeExtension extends DeepCodeLib implements DeepCode.ExtensionInterfa
4969
context.subscriptions.push(
5070
vscode.commands.registerCommand(
5171
DEEPCODE_LOGIN,
52-
this.initiateLogin.bind(this)
72+
this.executeCommand.bind(
73+
this,
74+
DEEPCODE_LOGIN,
75+
this.initiateLogin.bind(this)
76+
)
5377
)
5478
);
5579

5680
context.subscriptions.push(
5781
vscode.commands.registerCommand(
5882
DEEPCODE_APPROVE,
59-
this.approveUpload.bind(this)
83+
this.executeCommand.bind(
84+
this,
85+
DEEPCODE_APPROVE,
86+
this.approveUpload.bind(this)
87+
)
6088
)
6189
);
6290

6391
context.subscriptions.push(
6492
vscode.commands.registerCommand(
6593
DEEPCODE_START_COMMAND,
66-
this.startExtension.bind(this, true)
94+
this.executeCommand.bind(
95+
this,
96+
DEEPCODE_START_COMMAND,
97+
this.startExtension.bind(this)
98+
)
6799
)
68100
);
69101

@@ -77,7 +109,18 @@ class DeepCodeExtension extends DeepCodeLib implements DeepCode.ExtensionInterfa
77109
context.subscriptions.push(
78110
vscode.commands.registerCommand(
79111
DEEPCODE_SETTINGS_COMMAND,
80-
openDeepcodeSettingsCommand
112+
this.executeCommand.bind(
113+
this,
114+
DEEPCODE_SETTINGS_COMMAND,
115+
openDeepcodeSettingsCommand
116+
)
117+
)
118+
);
119+
120+
context.subscriptions.push(
121+
vscode.commands.registerCommand(
122+
DEEPCODE_DCIGNORE_COMMAND,
123+
createDCIgnoreCommand
81124
)
82125
);
83126

@@ -92,7 +135,9 @@ class DeepCodeExtension extends DeepCodeLib implements DeepCode.ExtensionInterfa
92135
);
93136

94137
this.activateAll();
95-
this.startExtension();
138+
this.startExtension().catch((err) => this.processError(err, {
139+
message: errorsLogs.failedExecution,
140+
}));
96141
}
97142

98143
}

src/deepcode/constants/commands.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ export const DEEPCODE_APPROVE = "deepcode.approve";
99
export const DEEPCODE_SETMODE_COMMAND = "deepcode.setmode";
1010
export const DEEPCODE_SETTINGS_COMMAND = "deepcode.settings";
1111
export const DEEPCODE_IGNORE_ISSUES_COMMAND = "deepcode.ignoreissues";
12+
export const DEEPCODE_DCIGNORE_COMMAND = "deepcode.dcignore";
1213
export const DEEPCODE_OPEN_BROWSER = "deepcode.open";
1314
export const DEEPCODE_OPEN_LOCAL = "deepcode.show";
1415

src/deepcode/lib/modules/BaseDeepCodeModule.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,19 +74,19 @@ export default abstract class BaseDeepCodeModule implements DeepCode.BaseDeepCod
7474
}
7575

7676
get uploadApproved(): boolean {
77-
return this.staticUploadApproved || this.source !== IDE_NAME || !!(vscode.workspace.getConfiguration('deepcode').get('uploadApproved'));
77+
return this.staticUploadApproved || this.source !== IDE_NAME || !!(vscode.workspace.getConfiguration('deepcode').get<boolean>('uploadApproved'));
7878
}
7979

8080
async setUploadApproved(value = true): Promise<void> {
8181
await vscode.workspace.getConfiguration('deepcode').update('uploadApproved', value, true);
8282
}
8383

8484
get shouldReportErrors(): boolean {
85-
return !!vscode.workspace.getConfiguration('deepcode').get('yesCrashReport');
85+
return !!vscode.workspace.getConfiguration('deepcode').get<boolean>('yesCrashReport');
8686
}
8787

8888
get shouldReportEvents(): boolean {
89-
return !!vscode.workspace.getConfiguration('deepcode').get('yesTelemetry');
89+
return !!vscode.workspace.getConfiguration('deepcode').get<boolean>('yesTelemetry');
9090
}
9191

9292
// Avoid refreshing context/views too often:

0 commit comments

Comments
 (0)