mirror of
https://github.com/microsoft/vscode.git
synced 2025-12-19 17:58:39 +00:00
@@ -581,11 +581,6 @@ export default tseslint.config(
|
||||
'src/vs/platform/telemetry/common/telemetryUtils.ts',
|
||||
'src/vs/platform/telemetry/node/1dsAppender.ts',
|
||||
'src/vs/platform/telemetry/node/errorTelemetry.ts',
|
||||
'src/vs/platform/terminal/common/terminal.ts',
|
||||
'src/vs/platform/terminal/node/ptyHostService.ts',
|
||||
'src/vs/platform/terminal/node/ptyService.ts',
|
||||
'src/vs/platform/terminal/node/terminalProcess.ts',
|
||||
'src/vs/platform/terminal/node/windowsShellHelper.ts',
|
||||
'src/vs/platform/theme/common/iconRegistry.ts',
|
||||
'src/vs/platform/theme/common/tokenClassificationRegistry.ts',
|
||||
'src/vs/platform/update/common/updateIpc.ts',
|
||||
|
||||
@@ -255,7 +255,7 @@ export const enum ProcessPropertyType {
|
||||
ShellIntegrationInjectionFailureReason = 'shellIntegrationInjectionFailureReason',
|
||||
}
|
||||
|
||||
export interface IProcessProperty<T extends ProcessPropertyType> {
|
||||
export interface IProcessProperty<T extends ProcessPropertyType = ProcessPropertyType> {
|
||||
type: T;
|
||||
value: IProcessPropertyMap[T];
|
||||
}
|
||||
@@ -301,7 +301,7 @@ export interface IPtyService {
|
||||
readonly onProcessReplay: Event<{ id: number; event: IPtyHostProcessReplayEvent }>;
|
||||
readonly onProcessOrphanQuestion: Event<{ id: number }>;
|
||||
readonly onDidRequestDetach: Event<{ requestId: number; workspaceId: string; instanceId: number }>;
|
||||
readonly onDidChangeProperty: Event<{ id: number; property: IProcessProperty<any> }>;
|
||||
readonly onDidChangeProperty: Event<{ id: number; property: IProcessProperty }>;
|
||||
readonly onProcessExit: Event<{ id: number; event: number | undefined }>;
|
||||
|
||||
createProcess(
|
||||
@@ -774,7 +774,7 @@ export interface ITerminalChildProcess {
|
||||
readonly onProcessData: Event<IProcessDataEvent | string>;
|
||||
readonly onProcessReady: Event<IProcessReadyEvent>;
|
||||
readonly onProcessReplayComplete?: Event<void>;
|
||||
readonly onDidChangeProperty: Event<IProcessProperty<any>>;
|
||||
readonly onDidChangeProperty: Event<IProcessProperty>;
|
||||
readonly onProcessExit: Event<number | undefined>;
|
||||
readonly onRestoreCommands?: Event<ISerializedCommandDetectionCapability>;
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ export class PtyHostService extends Disposable implements IPtyHostService {
|
||||
readonly onProcessOrphanQuestion = this._onProcessOrphanQuestion.event;
|
||||
private readonly _onDidRequestDetach = this._register(new Emitter<{ requestId: number; workspaceId: string; instanceId: number }>());
|
||||
readonly onDidRequestDetach = this._onDidRequestDetach.event;
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<{ id: number; property: IProcessProperty<any> }>());
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<{ id: number; property: IProcessProperty }>());
|
||||
readonly onDidChangeProperty = this._onDidChangeProperty.event;
|
||||
private readonly _onProcessExit = this._register(new Emitter<{ id: number; event: number | undefined }>());
|
||||
readonly onProcessExit = this._onProcessExit.event;
|
||||
|
||||
@@ -37,13 +37,13 @@ import { hasKey } from '../../../base/common/types.js';
|
||||
type XtermTerminal = pkg.Terminal;
|
||||
const { Terminal: XtermTerminal } = pkg;
|
||||
|
||||
export function traceRpc(_target: any, key: string, descriptor: any) {
|
||||
export function traceRpc(_target: Object, key: string, descriptor: PropertyDescriptor) {
|
||||
if (typeof descriptor.value !== 'function') {
|
||||
throw new Error('not supported');
|
||||
}
|
||||
const fnKey = 'value';
|
||||
const fn = descriptor.value;
|
||||
descriptor[fnKey] = async function (...args: unknown[]) {
|
||||
descriptor[fnKey] = async function <TThis extends { traceRpcArgs: { logService: ILogService; simulatedLatency: number } }>(this: TThis, ...args: unknown[]) {
|
||||
if (this.traceRpcArgs.logService.getLevel() === LogLevel.Trace) {
|
||||
this.traceRpcArgs.logService.trace(`[RPC Request] PtyService#${fn.name}(${args.map(e => JSON.stringify(e)).join(', ')})`);
|
||||
}
|
||||
@@ -110,7 +110,7 @@ export class PtyService extends Disposable implements IPtyService {
|
||||
readonly onProcessOrphanQuestion = this._traceEvent('_onProcessOrphanQuestion', this._onProcessOrphanQuestion.event);
|
||||
private readonly _onDidRequestDetach = this._register(new Emitter<{ requestId: number; workspaceId: string; instanceId: number }>());
|
||||
readonly onDidRequestDetach = this._traceEvent('_onDidRequestDetach', this._onDidRequestDetach.event);
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<{ id: number; property: IProcessProperty<any> }>());
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<{ id: number; property: IProcessProperty }>());
|
||||
readonly onDidChangeProperty = this._traceEvent('_onDidChangeProperty', this._onDidChangeProperty.event);
|
||||
|
||||
private _traceEvent<T>(name: string, event: Event<T>): Event<T> {
|
||||
@@ -663,7 +663,7 @@ class PersistentTerminalProcess extends Disposable {
|
||||
|
||||
private readonly _bufferer: TerminalDataBufferer;
|
||||
|
||||
private readonly _pendingCommands = new Map<number, { resolve: (data: any) => void; reject: (err: any) => void }>();
|
||||
private readonly _pendingCommands = new Map<number, { resolve: (data: unknown) => void; reject: (err: unknown) => void }>();
|
||||
|
||||
private _isStarted: boolean = false;
|
||||
private _interactionState: MutationLogger<InteractionState>;
|
||||
@@ -685,7 +685,7 @@ class PersistentTerminalProcess extends Disposable {
|
||||
readonly onProcessData = this._onProcessData.event;
|
||||
private readonly _onProcessOrphanQuestion = this._register(new Emitter<void>());
|
||||
readonly onProcessOrphanQuestion = this._onProcessOrphanQuestion.event;
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<IProcessProperty<any>>());
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<IProcessProperty>());
|
||||
readonly onDidChangeProperty = this._onDidChangeProperty.event;
|
||||
|
||||
private _inReplay = false;
|
||||
@@ -931,7 +931,7 @@ class PersistentTerminalProcess extends Disposable {
|
||||
this._onPersistentProcessReady.fire();
|
||||
}
|
||||
|
||||
sendCommandResult(reqId: number, isError: boolean, serializedPayload: any): void {
|
||||
sendCommandResult(reqId: number, isError: boolean, serializedPayload: unknown): void {
|
||||
const data = this._pendingCommands.get(reqId);
|
||||
if (!data) {
|
||||
return;
|
||||
|
||||
@@ -130,7 +130,7 @@ export class TerminalProcess extends Disposable implements ITerminalChildProcess
|
||||
readonly onProcessData = this._onProcessData.event;
|
||||
private readonly _onProcessReady = this._register(new Emitter<IProcessReadyEvent>());
|
||||
readonly onProcessReady = this._onProcessReady.event;
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<IProcessProperty<any>>());
|
||||
private readonly _onDidChangeProperty = this._register(new Emitter<IProcessProperty>());
|
||||
readonly onDidChangeProperty = this._onDidChangeProperty.event;
|
||||
private readonly _onProcessExit = this._register(new Emitter<number>());
|
||||
readonly onProcessExit = this._onProcessExit.event;
|
||||
@@ -542,8 +542,8 @@ export class TerminalProcess extends Disposable implements ITerminalChildProcess
|
||||
const object = this._writeQueue.shift()!;
|
||||
this._logService.trace('node-pty.IPty#write', object.data);
|
||||
if (object.isBinary) {
|
||||
// TODO: node-pty's write should accept a Buffer
|
||||
// eslint-disable-next-line local/code-no-any-casts
|
||||
// TODO: node-pty's write should accept a Buffer, needs https://github.com/microsoft/node-pty/pull/812
|
||||
// eslint-disable-next-line local/code-no-any-casts, @typescript-eslint/no-explicit-any
|
||||
this._ptyProcess!.write(Buffer.from(object.data, 'binary') as any);
|
||||
} else {
|
||||
this._ptyProcess!.write(object.data);
|
||||
|
||||
@@ -91,7 +91,7 @@ export class WindowsShellHelper extends Disposable implements IWindowsShellHelpe
|
||||
}
|
||||
}
|
||||
|
||||
private traverseTree(tree: any): string {
|
||||
private traverseTree(tree: WindowsProcessTreeType.IProcessTreeNode | undefined): string {
|
||||
if (!tree) {
|
||||
return '';
|
||||
}
|
||||
|
||||
@@ -386,7 +386,7 @@ export class TerminalProcessManager extends Disposable implements ITerminalProce
|
||||
newProcess.onDidChangeProperty(({ type, value }) => {
|
||||
switch (type) {
|
||||
case ProcessPropertyType.HasChildProcesses:
|
||||
this._hasChildProcesses = value;
|
||||
this._hasChildProcesses = value as IProcessPropertyMap[ProcessPropertyType.HasChildProcesses];
|
||||
break;
|
||||
case ProcessPropertyType.FailedShellIntegrationActivation:
|
||||
this._telemetryService?.publicLog2<{}, { owner: 'meganrogge'; comment: 'Indicates shell integration was not activated because of custom args' }>('terminal/shellIntegrationActivationFailureCustomArgs');
|
||||
|
||||
Reference in New Issue
Block a user