@theia/plugin-dev 1.37.0-next.19 → 1.37.0-next.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
import { RequestOptions, RequestService } from '@theia/core/shared/@theia/request';
|
|
2
3
|
import * as cp from 'child_process';
|
|
3
4
|
import URI from '@theia/core/lib/common/uri';
|
|
4
5
|
import { ContributionProvider } from '@theia/core/lib/common/contribution-provider';
|
|
@@ -58,10 +59,11 @@ export declare abstract class AbstractHostedInstanceManager implements HostedIns
|
|
|
58
59
|
protected isPluginRunning: boolean;
|
|
59
60
|
protected instanceUri: URI;
|
|
60
61
|
protected pluginUri: URI;
|
|
61
|
-
protected instanceOptions:
|
|
62
|
+
protected instanceOptions: Omit<RequestOptions, 'url'>;
|
|
62
63
|
protected readonly hostedPluginSupport: HostedPluginSupport;
|
|
63
64
|
protected readonly metadata: MetadataScanner;
|
|
64
65
|
protected readonly hostedPluginProcess: HostedPluginProcess;
|
|
66
|
+
protected readonly request: RequestService;
|
|
65
67
|
isRunning(): boolean;
|
|
66
68
|
run(pluginUri: URI, port?: number): Promise<URI>;
|
|
67
69
|
debug(pluginUri: URI, debugConfig: PluginDebugConfiguration): Promise<URI>;
|
|
@@ -87,7 +89,7 @@ export declare abstract class AbstractHostedInstanceManager implements HostedIns
|
|
|
87
89
|
isPluginValid(uri: URI): boolean;
|
|
88
90
|
protected getStartCommand(port?: number, debugConfig?: PluginDebugConfiguration): Promise<string[]>;
|
|
89
91
|
protected postProcessInstanceUri(uri: URI): Promise<URI>;
|
|
90
|
-
protected postProcessInstanceOptions(options:
|
|
92
|
+
protected postProcessInstanceOptions(options: Omit<RequestOptions, 'url'>): Promise<Omit<RequestOptions, 'url'>>;
|
|
91
93
|
protected runHostedPluginTheiaInstance(command: string[], options: cp.SpawnOptions): Promise<URI>;
|
|
92
94
|
protected validatePort(port: number): Promise<void>;
|
|
93
95
|
protected isPortFree(port: number): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosted-instance-manager.d.ts","sourceRoot":"","sources":["../../src/node/hosted-instance-manager.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"hosted-instance-manager.d.ts","sourceRoot":"","sources":["../../src/node/hosted-instance-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,12 +25,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
25
25
|
};
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
27
|
exports.ElectronNodeHostedPluginRunner = exports.NodeHostedPluginRunner = exports.AbstractHostedInstanceManager = exports.HostedInstanceManager = void 0;
|
|
28
|
+
const request_1 = require("@theia/core/shared/@theia/request");
|
|
28
29
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
29
30
|
const cp = require("child_process");
|
|
30
31
|
const fs = require("@theia/core/shared/fs-extra");
|
|
31
32
|
const net = require("net");
|
|
32
33
|
const path = require("path");
|
|
33
|
-
const request = require("request");
|
|
34
34
|
const uri_1 = require("@theia/core/lib/common/uri");
|
|
35
35
|
const contribution_provider_1 = require("@theia/core/lib/common/contribution-provider");
|
|
36
36
|
const hosted_plugin_uri_postprocessor_1 = require("./hosted-plugin-uri-postprocessor");
|
|
@@ -83,7 +83,7 @@ let AbstractHostedInstanceManager = class AbstractHostedInstanceManager {
|
|
|
83
83
|
this.pluginUri = pluginUri;
|
|
84
84
|
// disable redirect to grab the release
|
|
85
85
|
this.instanceOptions = {
|
|
86
|
-
|
|
86
|
+
followRedirects: 0
|
|
87
87
|
};
|
|
88
88
|
this.instanceOptions = await this.postProcessInstanceOptions(this.instanceOptions);
|
|
89
89
|
await this.checkInstanceUriReady();
|
|
@@ -141,15 +141,15 @@ let AbstractHostedInstanceManager = class AbstractHostedInstanceManager {
|
|
|
141
141
|
* Ping the plugin URI (checking status of the head)
|
|
142
142
|
*/
|
|
143
143
|
async ping() {
|
|
144
|
-
|
|
144
|
+
try {
|
|
145
145
|
const url = this.instanceUri.toString();
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
}
|
|
146
|
+
// Wait that the status is OK
|
|
147
|
+
const response = await this.request.request(Object.assign({ url, type: 'HEAD' }, this.instanceOptions));
|
|
148
|
+
return response.res.statusCode === 200;
|
|
149
|
+
}
|
|
150
|
+
catch (_a) {
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
153
|
}
|
|
154
154
|
isPluginValid(uri) {
|
|
155
155
|
const pckPath = path.join(file_uri_1.FileUri.fsPath(uri), 'package.json');
|
|
@@ -273,6 +273,10 @@ __decorate([
|
|
|
273
273
|
(0, inversify_1.inject)(hosted_plugin_process_1.HostedPluginProcess),
|
|
274
274
|
__metadata("design:type", hosted_plugin_process_1.HostedPluginProcess)
|
|
275
275
|
], AbstractHostedInstanceManager.prototype, "hostedPluginProcess", void 0);
|
|
276
|
+
__decorate([
|
|
277
|
+
(0, inversify_1.inject)(request_1.RequestService),
|
|
278
|
+
__metadata("design:type", Object)
|
|
279
|
+
], AbstractHostedInstanceManager.prototype, "request", void 0);
|
|
276
280
|
AbstractHostedInstanceManager = __decorate([
|
|
277
281
|
(0, inversify_1.injectable)()
|
|
278
282
|
], AbstractHostedInstanceManager);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosted-instance-manager.js","sourceRoot":"","sources":["../../src/node/hosted-instance-manager.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;;;;;;;;;;AAEhF,4DAAyE;AACzE,oCAAoC;AACpC,kDAAkD;AAClD,2BAA2B;AAC3B,6BAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"hosted-instance-manager.js","sourceRoot":"","sources":["../../src/node/hosted-instance-manager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/plugin-dev",
|
|
3
|
-
"version": "1.37.0-next.
|
|
3
|
+
"version": "1.37.0-next.21+2deedbad7",
|
|
4
4
|
"description": "Theia - Plugin Development Extension",
|
|
5
5
|
"main": "lib/common/index.js",
|
|
6
6
|
"typings": "lib/common/index.d.ts",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@theia/core": "1.37.0-next.
|
|
9
|
-
"@theia/debug": "1.37.0-next.
|
|
10
|
-
"@theia/filesystem": "1.37.0-next.
|
|
11
|
-
"@theia/output": "1.37.0-next.
|
|
12
|
-
"@theia/plugin-ext": "1.37.0-next.
|
|
13
|
-
"@theia/workspace": "1.37.0-next.
|
|
14
|
-
"
|
|
15
|
-
"ps-tree": "^1.2.0",
|
|
16
|
-
"request": "^2.82.0"
|
|
8
|
+
"@theia/core": "1.37.0-next.21+2deedbad7",
|
|
9
|
+
"@theia/debug": "1.37.0-next.21+2deedbad7",
|
|
10
|
+
"@theia/filesystem": "1.37.0-next.21+2deedbad7",
|
|
11
|
+
"@theia/output": "1.37.0-next.21+2deedbad7",
|
|
12
|
+
"@theia/plugin-ext": "1.37.0-next.21+2deedbad7",
|
|
13
|
+
"@theia/workspace": "1.37.0-next.21+2deedbad7",
|
|
14
|
+
"ps-tree": "^1.2.0"
|
|
17
15
|
},
|
|
18
16
|
"publishConfig": {
|
|
19
17
|
"access": "public"
|
|
@@ -55,5 +53,5 @@
|
|
|
55
53
|
"nyc": {
|
|
56
54
|
"extends": "../../configs/nyc.json"
|
|
57
55
|
},
|
|
58
|
-
"gitHead": "
|
|
56
|
+
"gitHead": "2deedbad70bd4b503bf9c7e733ab9603f492600f"
|
|
59
57
|
}
|
|
@@ -14,13 +14,12 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
|
|
17
|
+
import { RequestOptions, RequestService } from '@theia/core/shared/@theia/request';
|
|
17
18
|
import { inject, injectable, named } from '@theia/core/shared/inversify';
|
|
18
19
|
import * as cp from 'child_process';
|
|
19
20
|
import * as fs from '@theia/core/shared/fs-extra';
|
|
20
21
|
import * as net from 'net';
|
|
21
22
|
import * as path from 'path';
|
|
22
|
-
import * as request from 'request';
|
|
23
|
-
|
|
24
23
|
import URI from '@theia/core/lib/common/uri';
|
|
25
24
|
import { ContributionProvider } from '@theia/core/lib/common/contribution-provider';
|
|
26
25
|
import { HostedPluginUriPostProcessor, HostedPluginUriPostProcessorSymbolName } from './hosted-plugin-uri-postprocessor';
|
|
@@ -101,7 +100,7 @@ export abstract class AbstractHostedInstanceManager implements HostedInstanceMan
|
|
|
101
100
|
protected isPluginRunning: boolean = false;
|
|
102
101
|
protected instanceUri: URI;
|
|
103
102
|
protected pluginUri: URI;
|
|
104
|
-
protected instanceOptions:
|
|
103
|
+
protected instanceOptions: Omit<RequestOptions, 'url'>;
|
|
105
104
|
|
|
106
105
|
@inject(HostedPluginSupport)
|
|
107
106
|
protected readonly hostedPluginSupport: HostedPluginSupport;
|
|
@@ -112,6 +111,9 @@ export abstract class AbstractHostedInstanceManager implements HostedInstanceMan
|
|
|
112
111
|
@inject(HostedPluginProcess)
|
|
113
112
|
protected readonly hostedPluginProcess: HostedPluginProcess;
|
|
114
113
|
|
|
114
|
+
@inject(RequestService)
|
|
115
|
+
protected readonly request: RequestService;
|
|
116
|
+
|
|
115
117
|
isRunning(): boolean {
|
|
116
118
|
return this.isPluginRunning;
|
|
117
119
|
}
|
|
@@ -148,7 +150,7 @@ export abstract class AbstractHostedInstanceManager implements HostedInstanceMan
|
|
|
148
150
|
this.pluginUri = pluginUri;
|
|
149
151
|
// disable redirect to grab the release
|
|
150
152
|
this.instanceOptions = {
|
|
151
|
-
|
|
153
|
+
followRedirects: 0
|
|
152
154
|
};
|
|
153
155
|
this.instanceOptions = await this.postProcessInstanceOptions(this.instanceOptions);
|
|
154
156
|
await this.checkInstanceUriReady();
|
|
@@ -212,15 +214,14 @@ export abstract class AbstractHostedInstanceManager implements HostedInstanceMan
|
|
|
212
214
|
* Ping the plugin URI (checking status of the head)
|
|
213
215
|
*/
|
|
214
216
|
private async ping(): Promise<boolean> {
|
|
215
|
-
|
|
217
|
+
try {
|
|
216
218
|
const url = this.instanceUri.toString();
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
});
|
|
219
|
+
// Wait that the status is OK
|
|
220
|
+
const response = await this.request.request({ url, type: 'HEAD', ...this.instanceOptions });
|
|
221
|
+
return response.res.statusCode === 200;
|
|
222
|
+
} catch {
|
|
223
|
+
return false;
|
|
224
|
+
}
|
|
224
225
|
}
|
|
225
226
|
|
|
226
227
|
isPluginValid(uri: URI): boolean {
|
|
@@ -274,7 +275,7 @@ export abstract class AbstractHostedInstanceManager implements HostedInstanceMan
|
|
|
274
275
|
return uri;
|
|
275
276
|
}
|
|
276
277
|
|
|
277
|
-
protected async postProcessInstanceOptions(options:
|
|
278
|
+
protected async postProcessInstanceOptions(options: Omit<RequestOptions, 'url'>): Promise<Omit<RequestOptions, 'url'>> {
|
|
278
279
|
return options;
|
|
279
280
|
}
|
|
280
281
|
|