Add check to ensure RC and forward use '--serverMode'. (#104123)
This commit is contained in:
parent
ddc794ab8b
commit
54a38a2ee9
2 changed files with 9 additions and 1 deletions
|
@ -18,6 +18,7 @@ import { ILogDirectoryProvider } from './logDirectoryProvider';
|
||||||
import { GetErrRoutingTsServer, ITypeScriptServer, ProcessBasedTsServer, SyntaxRoutingTsServer, TsServerDelegate, TsServerProcessFactory, TsServerProcessKind } from './server';
|
import { GetErrRoutingTsServer, ITypeScriptServer, ProcessBasedTsServer, SyntaxRoutingTsServer, TsServerDelegate, TsServerProcessFactory, TsServerProcessKind } from './server';
|
||||||
import { TypeScriptVersionManager } from './versionManager';
|
import { TypeScriptVersionManager } from './versionManager';
|
||||||
import { ITypeScriptVersionProvider, TypeScriptVersion } from './versionProvider';
|
import { ITypeScriptVersionProvider, TypeScriptVersion } from './versionProvider';
|
||||||
|
import * as semver from 'semver';
|
||||||
|
|
||||||
const enum CompositeServerType {
|
const enum CompositeServerType {
|
||||||
/** Run a single server that handles all commands */
|
/** Run a single server that handles all commands */
|
||||||
|
@ -163,8 +164,14 @@ export class TypeScriptServerSpawner {
|
||||||
let tsServerLogFile: string | undefined;
|
let tsServerLogFile: string | undefined;
|
||||||
|
|
||||||
if (kind === TsServerProcessKind.Syntax) {
|
if (kind === TsServerProcessKind.Syntax) {
|
||||||
|
if (semver.gte(API.v400rc.fullVersionString, apiVersion.fullVersionString)) {
|
||||||
|
args.push('--serverMode');
|
||||||
|
args.push('partialSemantic');
|
||||||
|
}
|
||||||
|
else {
|
||||||
args.push('--syntaxOnly');
|
args.push('--syntaxOnly');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (apiVersion.gte(API.v250)) {
|
if (apiVersion.gte(API.v250)) {
|
||||||
args.push('--useInferredProjectPerProjectRoot');
|
args.push('--useInferredProjectPerProjectRoot');
|
||||||
|
|
|
@ -34,6 +34,7 @@ export default class API {
|
||||||
public static readonly v380 = API.fromSimpleString('3.8.0');
|
public static readonly v380 = API.fromSimpleString('3.8.0');
|
||||||
public static readonly v381 = API.fromSimpleString('3.8.1');
|
public static readonly v381 = API.fromSimpleString('3.8.1');
|
||||||
public static readonly v390 = API.fromSimpleString('3.9.0');
|
public static readonly v390 = API.fromSimpleString('3.9.0');
|
||||||
|
public static readonly v400rc = API.fromSimpleString('4.0.0-rc');
|
||||||
public static readonly v400 = API.fromSimpleString('4.0.0');
|
public static readonly v400 = API.fromSimpleString('4.0.0');
|
||||||
|
|
||||||
public static fromVersionString(versionString: string): API {
|
public static fromVersionString(versionString: string): API {
|
||||||
|
|
Loading…
Reference in a new issue