Enable building typescript.d.ts with current source

This commit is contained in:
Sheetal Nandi 2019-02-22 15:32:42 -08:00
parent 9730cfa845
commit 9fa28158bb
18 changed files with 201 additions and 8 deletions

View file

@ -127,6 +127,9 @@ const buildServices = (() => {
// build typescriptServices.out.js
const buildTypescriptServicesOut = () => buildProject("built/local/typescriptServices.tsconfig.json", cmdLineOptions);
// build typescriptServices/typescriptServices.js
const buildTypescriptServicesOut1 = () => buildProject("src/typescriptServices/tsconfig.json", { ...cmdLineOptions, lkg: false });
// create typescriptServices.js
const createTypescriptServicesJs = () => src("built/local/typescriptServices.out.js")
.pipe(newer("built/local/typescriptServices.js"))
@ -136,6 +139,15 @@ const buildServices = (() => {
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
.pipe(dest("built/local"));
// create typescriptServices1.js
const createTypescriptServicesJs1 = () => src("built/local/typescriptServices/typescriptServices.js")
.pipe(newer("built/local/typescriptServices1.js"))
.pipe(sourcemaps.init({ loadMaps: true }))
.pipe(prependFile(copyright))
.pipe(rename("typescriptServices1.js"))
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
.pipe(dest("built/local"));
// create typescriptServices.d.ts
const createTypescriptServicesDts = () => src("built/local/typescriptServices.out.d.ts")
.pipe(newer("built/local/typescriptServices.d.ts"))
@ -144,6 +156,14 @@ const buildServices = (() => {
.pipe(rename("typescriptServices.d.ts"))
.pipe(dest("built/local"));
// create typescriptServices1.d.ts
const createTypescriptServicesDts1 = () => src("built/local/typescriptServices/typescriptServices.d.ts")
.pipe(newer("built/local/typescriptServices1.d.ts"))
.pipe(prependFile(copyright))
.pipe(transform(content => content.replace(/^(\s*)(export )?const enum (\S+) {(\s*)$/gm, "$1$2enum $3 {$4")))
.pipe(rename("typescriptServices1.d.ts"))
.pipe(dest("built/local"));
// create typescript.js
const createTypescriptJs = () => src("built/local/typescriptServices.js")
.pipe(newer("built/local/typescript.js"))
@ -152,6 +172,14 @@ const buildServices = (() => {
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
.pipe(dest("built/local"));
// create typescript1.js
const createTypescriptJs1 = () => src("built/local/typescriptServices1.js")
.pipe(newer("built/local/typescript1.js"))
.pipe(sourcemaps.init({ loadMaps: true }))
.pipe(rename("typescript1.js"))
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
.pipe(dest("built/local"));
// create typescript.d.ts
const createTypescriptDts = () => src("built/local/typescriptServices.d.ts")
.pipe(newer("built/local/typescript.d.ts"))
@ -159,6 +187,13 @@ const buildServices = (() => {
.pipe(rename("typescript.d.ts"))
.pipe(dest("built/local"));
// create typescript1.d.ts
const createTypescriptDts1 = () => src("built/local/typescriptServices1.d.ts")
.pipe(newer("built/local/typescript1.d.ts"))
.pipe(append("\nexport = ts;"))
.pipe(rename("typescript1.d.ts"))
.pipe(dest("built/local"));
// create typescript_standalone.d.ts
const createTypescriptStandaloneDts = () => src("built/local/typescriptServices.d.ts")
.pipe(newer("built/local/typescript_standalone.d.ts"))
@ -166,6 +201,13 @@ const buildServices = (() => {
.pipe(rename("typescript_standalone.d.ts"))
.pipe(dest("built/local"));
// create typescript_standalone.d.ts
const createTypescriptStandaloneDts1 = () => src("built/local/typescriptServices1.d.ts")
.pipe(newer("built/local/typescript_standalone1.d.ts"))
.pipe(transform(content => content.replace(/declare (namespace|module) ts/g, 'declare module "typescript"')))
.pipe(rename("typescript_standalone1.d.ts"))
.pipe(dest("built/local"));
return series(
flattenServicesConfig,
buildTypescriptServicesOut,
@ -173,7 +215,15 @@ const buildServices = (() => {
createTypescriptServicesDts,
createTypescriptJs,
createTypescriptDts,
createTypescriptStandaloneDts);
createTypescriptStandaloneDts,
localPreBuild,
buildTypescriptServicesOut1,
createTypescriptServicesJs1,
createTypescriptServicesDts1,
createTypescriptJs1,
createTypescriptDts1,
createTypescriptStandaloneDts1,
);
})();
task("services", series(preBuild, buildServices));
task("services").description = "Builds the language service";
@ -193,6 +243,13 @@ const cleanServices = async () => {
"built/local/typescript.js",
"built/local/typescript.d.ts",
"built/local/typescript_standalone.d.ts",
"built/local/typescriptServices/typescriptServices.js",
"built/local/typescriptServices/typescriptServices.js.map",
"built/local/typescriptServices/typescriptServices.d.ts",
"built/local/typescriptServices1.js",
"built/local/typescript1.js",
"built/local/typescript1.d.ts",
"built/local/typescript_standalone1.d.ts",
]);
};
cleanTasks.push(cleanServices);
@ -263,6 +320,9 @@ const buildLssl = (() => {
// build tsserverlibrary.out.js
const buildServerLibraryOut = () => buildProject("built/local/tsserverlibrary.tsconfig.json", cmdLineOptions);
// build tsserverlibrary1.out.js
const buildServerLibraryOut1 = () => buildProject("src/tsserverlibrary/tsconfig.json", { ...cmdLineOptions, lkg: false });
// create tsserverlibrary.js
const createServerLibraryJs = () => src("built/local/tsserverlibrary.out.js")
.pipe(newer("built/local/tsserverlibrary.js"))
@ -272,6 +332,15 @@ const buildLssl = (() => {
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
.pipe(dest("built/local"));
// create tsserverlibrary1.js
const createServerLibraryJs1 = () => src("built/local/tsserverlibrary/tsserverlibrary.js")
.pipe(newer("built/local/tsserverlibrary1.js"))
.pipe(sourcemaps.init({ loadMaps: true }))
.pipe(prependFile(copyright))
.pipe(rename("tsserverlibrary1.js"))
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
.pipe(dest("built/local"));
// create tsserverlibrary.d.ts
const createServerLibraryDts = () => src("built/local/tsserverlibrary.out.d.ts")
.pipe(newer("built/local/tsserverlibrary.d.ts"))
@ -281,11 +350,25 @@ const buildLssl = (() => {
.pipe(rename("tsserverlibrary.d.ts"))
.pipe(dest("built/local"));
// create tsserverlibrary1.d.ts
const createServerLibraryDts1 = () => src("built/local/tsserverlibrary/tsserverlibrary.d.ts")
.pipe(newer("built/local/tsserverlibrary1.d.ts"))
.pipe(prependFile(copyright))
.pipe(transform(content => content.replace(/^(\s*)(export )?const enum (\S+) {(\s*)$/gm, "$1$2enum $3 {$4")))
.pipe(append("\nexport = ts;\nexport as namespace ts;"))
.pipe(rename("tsserverlibrary1.d.ts"))
.pipe(dest("built/local"));
return series(
flattenTsServerProject,
buildServerLibraryOut,
createServerLibraryJs,
createServerLibraryDts);
createServerLibraryDts,
localPreBuild,
buildServerLibraryOut1,
createServerLibraryJs1,
createServerLibraryDts1
);
})();
task("lssl", series(preBuild, buildLssl));
task("lssl").description = "Builds language service server library";
@ -303,6 +386,11 @@ const cleanLssl = async () => {
"built/local/tsserverlibrary.out.d.ts",
"built/local/tsserverlibrary.js",
"built/local/tsserverlibrary.d.ts",
"built/local/tsserverlibrary/tsserverlibrary.js",
"built/local/tsserverlibrary/tsserverlibrary.js.map",
"built/local/tsserverlibrary/tsserverlibrary.d.ts",
"built/local/tsserverlibrary1.js",
"built/local/tsserverlibrary1.d.ts",
]);
};
cleanTasks.push(cleanLssl);

View file

@ -1427,6 +1427,7 @@ namespace ts {
return _tsconfigRootOptions;
}
/*@internal*/
interface JsonConversionNotifier {
/**
* Notifies parent option object is being set with the optionKey and a valid optionValue

View file

@ -7762,6 +7762,7 @@ namespace ts {
}
}
/*@internal*/
type PragmaDiagnosticReporter = (pos: number, length: number, message: DiagnosticMessage) => void;
/*@internal*/

View file

@ -203,6 +203,7 @@ namespace ts {
return compilerHost;
}
/*@internal*/
interface CompilerHostLikeForCache {
fileExists(fileName: string): boolean;
readFile(fileName: string, encoding?: string): string | undefined;
@ -3123,6 +3124,7 @@ namespace ts {
}
}
/*@internal*/
interface CompilerHostLike {
useCaseSensitiveFileNames(): boolean;
getCurrentDirectory(): string;

View file

@ -454,6 +454,66 @@ namespace ts {
}
}
/*@internal*/
interface NodeBuffer extends Uint8Array {
write(str: string, offset?: number, length?: number, encoding?: string): number;
toString(encoding?: string, start?: number, end?: number): string;
toJSON(): { type: "Buffer", data: any[] };
equals(otherBuffer: Buffer): boolean;
compare(otherBuffer: Buffer, targetStart?: number, targetEnd?: number, sourceStart?: number, sourceEnd?: number): number;
copy(targetBuffer: Buffer, targetStart?: number, sourceStart?: number, sourceEnd?: number): number;
slice(start?: number, end?: number): Buffer;
writeUIntLE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
writeUIntBE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
writeIntLE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
writeIntBE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
readUIntLE(offset: number, byteLength: number, noAssert?: boolean): number;
readUIntBE(offset: number, byteLength: number, noAssert?: boolean): number;
readIntLE(offset: number, byteLength: number, noAssert?: boolean): number;
readIntBE(offset: number, byteLength: number, noAssert?: boolean): number;
readUInt8(offset: number, noAssert?: boolean): number;
readUInt16LE(offset: number, noAssert?: boolean): number;
readUInt16BE(offset: number, noAssert?: boolean): number;
readUInt32LE(offset: number, noAssert?: boolean): number;
readUInt32BE(offset: number, noAssert?: boolean): number;
readInt8(offset: number, noAssert?: boolean): number;
readInt16LE(offset: number, noAssert?: boolean): number;
readInt16BE(offset: number, noAssert?: boolean): number;
readInt32LE(offset: number, noAssert?: boolean): number;
readInt32BE(offset: number, noAssert?: boolean): number;
readFloatLE(offset: number, noAssert?: boolean): number;
readFloatBE(offset: number, noAssert?: boolean): number;
readDoubleLE(offset: number, noAssert?: boolean): number;
readDoubleBE(offset: number, noAssert?: boolean): number;
swap16(): Buffer;
swap32(): Buffer;
swap64(): Buffer;
writeUInt8(value: number, offset: number, noAssert?: boolean): number;
writeUInt16LE(value: number, offset: number, noAssert?: boolean): number;
writeUInt16BE(value: number, offset: number, noAssert?: boolean): number;
writeUInt32LE(value: number, offset: number, noAssert?: boolean): number;
writeUInt32BE(value: number, offset: number, noAssert?: boolean): number;
writeInt8(value: number, offset: number, noAssert?: boolean): number;
writeInt16LE(value: number, offset: number, noAssert?: boolean): number;
writeInt16BE(value: number, offset: number, noAssert?: boolean): number;
writeInt32LE(value: number, offset: number, noAssert?: boolean): number;
writeInt32BE(value: number, offset: number, noAssert?: boolean): number;
writeFloatLE(value: number, offset: number, noAssert?: boolean): number;
writeFloatBE(value: number, offset: number, noAssert?: boolean): number;
writeDoubleLE(value: number, offset: number, noAssert?: boolean): number;
writeDoubleBE(value: number, offset: number, noAssert?: boolean): number;
fill(value: any, offset?: number, end?: number): this;
indexOf(value: string | number | Buffer, byteOffset?: number, encoding?: string): number;
lastIndexOf(value: string | number | Buffer, byteOffset?: number, encoding?: string): number;
entries(): IterableIterator<[number, number]>;
includes(value: string | number | Buffer, byteOffset?: number, encoding?: string): boolean;
keys(): IterableIterator<number>;
values(): IterableIterator<number>;
}
/*@internal*/
interface Buffer extends NodeBuffer { }
// TODO: GH#18217 Methods on System are often used as if they are certainly defined
export interface System {
args: string[];

View file

@ -1,7 +1,7 @@
{
"extends": "../tsconfig-base",
"compilerOptions": {
"outFile": "../../built/local/compiler.js"
"outFile": "../../built/local/compiler/compiler.js"
},
"references": [],

View file

@ -1,7 +1,7 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
"outFile": "../../built/local/compiler.release.js",
"outFile": "../../built/local/compiler/compiler.release.js",
"removeComments": true,
"preserveConstEnums": false
}

View file

@ -6024,6 +6024,7 @@ namespace ts {
// The above fallback to `object` when there's no args to allow `{}` (as intended), but not the number 2, for example
// TODO: Swap to `undefined` for a cleaner API once strictNullChecks is enabled
/* @internal */
type ConcretePragmaSpecs = typeof commentPragmas;
/* @internal */

View file

@ -1,7 +1,7 @@
{
"extends": "../tsconfig-base",
"compilerOptions": {
"outFile": "../../built/local/jsTyping.js",
"outFile": "../../built/local/jsTyping/jsTyping.js",
"types": [
"node"
],

View file

@ -335,6 +335,7 @@ namespace ts.server {
RootOfInferredProjectFalse = "Open file was set as not inferred root",
}
/*@internal*/
interface ConfigFileExistenceInfo {
/**
* Cached value of existence of config file

View file

@ -1,8 +1,8 @@
{
"extends": "../tsconfig-base",
"compilerOptions": {
"removeComments": true,
"outFile": "../../built/local/server.js",
"removeComments": false,
"outFile": "../../built/local/server/server.js",
"preserveConstEnums": true,
"types": [
"node"

View file

@ -16,6 +16,7 @@ namespace ts {
return textChanges.getNewFileText(toStatements(valueInfo, outputKind), ScriptKind.TS, formatSettings.newLineCharacter || "\n", formatting.getFormatContext(formatSettings));
}
/* @internal */
const enum OutputKind { ExportEquals, NamedExport, NamespaceMember, Global }
function toNamespaceMemberStatements(info: ValueInfo): ReadonlyArray<Statement> {
return toStatements(info, OutputKind.NamespaceMember);

View file

@ -1,7 +1,7 @@
{
"extends": "../tsconfig-base",
"compilerOptions": {
"outFile": "../../built/local/services.js"
"outFile": "../../built/local/services/services.js"
},
"references": [
{ "path": "../compiler" },

View file

@ -0,0 +1,9 @@
{
"extends": "./tsconfig-base",
"compilerOptions": {
"declarationMap": false,
"composite": false,
"declaration": true,
"stripInternal": true
}
}

View file

@ -0,0 +1,15 @@
{
"extends": "../tsconfig-library-base",
"compilerOptions": {
"outFile": "../../built/local/tsserverlibrary/tsserverlibrary.js"
},
"files": [
"tsserverlibrary.ts"
],
"references": [
{ "path": "../compiler", "prepend": true },
{ "path": "../jsTyping", "prepend": true },
{ "path": "../services", "prepend": true },
{ "path": "../server", "prepend": true }
]
}

View file

View file

@ -0,0 +1,14 @@
{
"extends": "../tsconfig-library-base",
"compilerOptions": {
"outFile": "../../built/local/typescriptServices/typescriptServices.js"
},
"files": [
"typescriptServices.ts"
],
"references": [
{ "path": "../compiler", "prepend": true },
{ "path": "../jsTyping", "prepend": true },
{ "path": "../services", "prepend": true }
]
}