Skip to content

Commit 9fa2815

Browse files
committed
Enable building typescript.d.ts with current source
1 parent 9730cfa commit 9fa2815

18 files changed

+201
-8
lines changed

Diff for: Gulpfile.js

+90-2
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,9 @@ const buildServices = (() => {
127127
// build typescriptServices.out.js
128128
const buildTypescriptServicesOut = () => buildProject("built/local/typescriptServices.tsconfig.json", cmdLineOptions);
129129

130+
// build typescriptServices/typescriptServices.js
131+
const buildTypescriptServicesOut1 = () => buildProject("src/typescriptServices/tsconfig.json", { ...cmdLineOptions, lkg: false });
132+
130133
// create typescriptServices.js
131134
const createTypescriptServicesJs = () => src("built/local/typescriptServices.out.js")
132135
.pipe(newer("built/local/typescriptServices.js"))
@@ -136,6 +139,15 @@ const buildServices = (() => {
136139
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
137140
.pipe(dest("built/local"));
138141

142+
// create typescriptServices1.js
143+
const createTypescriptServicesJs1 = () => src("built/local/typescriptServices/typescriptServices.js")
144+
.pipe(newer("built/local/typescriptServices1.js"))
145+
.pipe(sourcemaps.init({ loadMaps: true }))
146+
.pipe(prependFile(copyright))
147+
.pipe(rename("typescriptServices1.js"))
148+
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
149+
.pipe(dest("built/local"));
150+
139151
// create typescriptServices.d.ts
140152
const createTypescriptServicesDts = () => src("built/local/typescriptServices.out.d.ts")
141153
.pipe(newer("built/local/typescriptServices.d.ts"))
@@ -144,6 +156,14 @@ const buildServices = (() => {
144156
.pipe(rename("typescriptServices.d.ts"))
145157
.pipe(dest("built/local"));
146158

159+
// create typescriptServices1.d.ts
160+
const createTypescriptServicesDts1 = () => src("built/local/typescriptServices/typescriptServices.d.ts")
161+
.pipe(newer("built/local/typescriptServices1.d.ts"))
162+
.pipe(prependFile(copyright))
163+
.pipe(transform(content => content.replace(/^(\s*)(export )?const enum (\S+) {(\s*)$/gm, "$1$2enum $3 {$4")))
164+
.pipe(rename("typescriptServices1.d.ts"))
165+
.pipe(dest("built/local"));
166+
147167
// create typescript.js
148168
const createTypescriptJs = () => src("built/local/typescriptServices.js")
149169
.pipe(newer("built/local/typescript.js"))
@@ -152,28 +172,58 @@ const buildServices = (() => {
152172
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
153173
.pipe(dest("built/local"));
154174

175+
// create typescript1.js
176+
const createTypescriptJs1 = () => src("built/local/typescriptServices1.js")
177+
.pipe(newer("built/local/typescript1.js"))
178+
.pipe(sourcemaps.init({ loadMaps: true }))
179+
.pipe(rename("typescript1.js"))
180+
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
181+
.pipe(dest("built/local"));
182+
155183
// create typescript.d.ts
156184
const createTypescriptDts = () => src("built/local/typescriptServices.d.ts")
157185
.pipe(newer("built/local/typescript.d.ts"))
158186
.pipe(append("\nexport = ts;"))
159187
.pipe(rename("typescript.d.ts"))
160188
.pipe(dest("built/local"));
161189

190+
// create typescript1.d.ts
191+
const createTypescriptDts1 = () => src("built/local/typescriptServices1.d.ts")
192+
.pipe(newer("built/local/typescript1.d.ts"))
193+
.pipe(append("\nexport = ts;"))
194+
.pipe(rename("typescript1.d.ts"))
195+
.pipe(dest("built/local"));
196+
162197
// create typescript_standalone.d.ts
163198
const createTypescriptStandaloneDts = () => src("built/local/typescriptServices.d.ts")
164199
.pipe(newer("built/local/typescript_standalone.d.ts"))
165200
.pipe(transform(content => content.replace(/declare (namespace|module) ts/g, 'declare module "typescript"')))
166201
.pipe(rename("typescript_standalone.d.ts"))
167202
.pipe(dest("built/local"));
168203

204+
// create typescript_standalone.d.ts
205+
const createTypescriptStandaloneDts1 = () => src("built/local/typescriptServices1.d.ts")
206+
.pipe(newer("built/local/typescript_standalone1.d.ts"))
207+
.pipe(transform(content => content.replace(/declare (namespace|module) ts/g, 'declare module "typescript"')))
208+
.pipe(rename("typescript_standalone1.d.ts"))
209+
.pipe(dest("built/local"));
210+
169211
return series(
170212
flattenServicesConfig,
171213
buildTypescriptServicesOut,
172214
createTypescriptServicesJs,
173215
createTypescriptServicesDts,
174216
createTypescriptJs,
175217
createTypescriptDts,
176-
createTypescriptStandaloneDts);
218+
createTypescriptStandaloneDts,
219+
localPreBuild,
220+
buildTypescriptServicesOut1,
221+
createTypescriptServicesJs1,
222+
createTypescriptServicesDts1,
223+
createTypescriptJs1,
224+
createTypescriptDts1,
225+
createTypescriptStandaloneDts1,
226+
);
177227
})();
178228
task("services", series(preBuild, buildServices));
179229
task("services").description = "Builds the language service";
@@ -193,6 +243,13 @@ const cleanServices = async () => {
193243
"built/local/typescript.js",
194244
"built/local/typescript.d.ts",
195245
"built/local/typescript_standalone.d.ts",
246+
"built/local/typescriptServices/typescriptServices.js",
247+
"built/local/typescriptServices/typescriptServices.js.map",
248+
"built/local/typescriptServices/typescriptServices.d.ts",
249+
"built/local/typescriptServices1.js",
250+
"built/local/typescript1.js",
251+
"built/local/typescript1.d.ts",
252+
"built/local/typescript_standalone1.d.ts",
196253
]);
197254
};
198255
cleanTasks.push(cleanServices);
@@ -263,6 +320,9 @@ const buildLssl = (() => {
263320
// build tsserverlibrary.out.js
264321
const buildServerLibraryOut = () => buildProject("built/local/tsserverlibrary.tsconfig.json", cmdLineOptions);
265322

323+
// build tsserverlibrary1.out.js
324+
const buildServerLibraryOut1 = () => buildProject("src/tsserverlibrary/tsconfig.json", { ...cmdLineOptions, lkg: false });
325+
266326
// create tsserverlibrary.js
267327
const createServerLibraryJs = () => src("built/local/tsserverlibrary.out.js")
268328
.pipe(newer("built/local/tsserverlibrary.js"))
@@ -272,6 +332,15 @@ const buildLssl = (() => {
272332
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
273333
.pipe(dest("built/local"));
274334

335+
// create tsserverlibrary1.js
336+
const createServerLibraryJs1 = () => src("built/local/tsserverlibrary/tsserverlibrary.js")
337+
.pipe(newer("built/local/tsserverlibrary1.js"))
338+
.pipe(sourcemaps.init({ loadMaps: true }))
339+
.pipe(prependFile(copyright))
340+
.pipe(rename("tsserverlibrary1.js"))
341+
.pipe(sourcemaps.write(".", { includeContent: false, destPath: "built/local" }))
342+
.pipe(dest("built/local"));
343+
275344
// create tsserverlibrary.d.ts
276345
const createServerLibraryDts = () => src("built/local/tsserverlibrary.out.d.ts")
277346
.pipe(newer("built/local/tsserverlibrary.d.ts"))
@@ -281,11 +350,25 @@ const buildLssl = (() => {
281350
.pipe(rename("tsserverlibrary.d.ts"))
282351
.pipe(dest("built/local"));
283352

353+
// create tsserverlibrary1.d.ts
354+
const createServerLibraryDts1 = () => src("built/local/tsserverlibrary/tsserverlibrary.d.ts")
355+
.pipe(newer("built/local/tsserverlibrary1.d.ts"))
356+
.pipe(prependFile(copyright))
357+
.pipe(transform(content => content.replace(/^(\s*)(export )?const enum (\S+) {(\s*)$/gm, "$1$2enum $3 {$4")))
358+
.pipe(append("\nexport = ts;\nexport as namespace ts;"))
359+
.pipe(rename("tsserverlibrary1.d.ts"))
360+
.pipe(dest("built/local"));
361+
284362
return series(
285363
flattenTsServerProject,
286364
buildServerLibraryOut,
287365
createServerLibraryJs,
288-
createServerLibraryDts);
366+
createServerLibraryDts,
367+
localPreBuild,
368+
buildServerLibraryOut1,
369+
createServerLibraryJs1,
370+
createServerLibraryDts1
371+
);
289372
})();
290373
task("lssl", series(preBuild, buildLssl));
291374
task("lssl").description = "Builds language service server library";
@@ -303,6 +386,11 @@ const cleanLssl = async () => {
303386
"built/local/tsserverlibrary.out.d.ts",
304387
"built/local/tsserverlibrary.js",
305388
"built/local/tsserverlibrary.d.ts",
389+
"built/local/tsserverlibrary/tsserverlibrary.js",
390+
"built/local/tsserverlibrary/tsserverlibrary.js.map",
391+
"built/local/tsserverlibrary/tsserverlibrary.d.ts",
392+
"built/local/tsserverlibrary1.js",
393+
"built/local/tsserverlibrary1.d.ts",
306394
]);
307395
};
308396
cleanTasks.push(cleanLssl);

Diff for: src/compiler/commandLineParser.ts

+1
Original file line numberDiff line numberDiff line change
@@ -1427,6 +1427,7 @@ namespace ts {
14271427
return _tsconfigRootOptions;
14281428
}
14291429

1430+
/*@internal*/
14301431
interface JsonConversionNotifier {
14311432
/**
14321433
* Notifies parent option object is being set with the optionKey and a valid optionValue

Diff for: src/compiler/parser.ts

+1
Original file line numberDiff line numberDiff line change
@@ -7762,6 +7762,7 @@ namespace ts {
77627762
}
77637763
}
77647764

7765+
/*@internal*/
77657766
type PragmaDiagnosticReporter = (pos: number, length: number, message: DiagnosticMessage) => void;
77667767

77677768
/*@internal*/

Diff for: src/compiler/program.ts

+2
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,7 @@ namespace ts {
203203
return compilerHost;
204204
}
205205

206+
/*@internal*/
206207
interface CompilerHostLikeForCache {
207208
fileExists(fileName: string): boolean;
208209
readFile(fileName: string, encoding?: string): string | undefined;
@@ -3123,6 +3124,7 @@ namespace ts {
31233124
}
31243125
}
31253126

3127+
/*@internal*/
31263128
interface CompilerHostLike {
31273129
useCaseSensitiveFileNames(): boolean;
31283130
getCurrentDirectory(): string;

Diff for: src/compiler/sys.ts

+60
Original file line numberDiff line numberDiff line change
@@ -454,6 +454,66 @@ namespace ts {
454454
}
455455
}
456456

457+
/*@internal*/
458+
interface NodeBuffer extends Uint8Array {
459+
write(str: string, offset?: number, length?: number, encoding?: string): number;
460+
toString(encoding?: string, start?: number, end?: number): string;
461+
toJSON(): { type: "Buffer", data: any[] };
462+
equals(otherBuffer: Buffer): boolean;
463+
compare(otherBuffer: Buffer, targetStart?: number, targetEnd?: number, sourceStart?: number, sourceEnd?: number): number;
464+
copy(targetBuffer: Buffer, targetStart?: number, sourceStart?: number, sourceEnd?: number): number;
465+
slice(start?: number, end?: number): Buffer;
466+
writeUIntLE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
467+
writeUIntBE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
468+
writeIntLE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
469+
writeIntBE(value: number, offset: number, byteLength: number, noAssert?: boolean): number;
470+
readUIntLE(offset: number, byteLength: number, noAssert?: boolean): number;
471+
readUIntBE(offset: number, byteLength: number, noAssert?: boolean): number;
472+
readIntLE(offset: number, byteLength: number, noAssert?: boolean): number;
473+
readIntBE(offset: number, byteLength: number, noAssert?: boolean): number;
474+
readUInt8(offset: number, noAssert?: boolean): number;
475+
readUInt16LE(offset: number, noAssert?: boolean): number;
476+
readUInt16BE(offset: number, noAssert?: boolean): number;
477+
readUInt32LE(offset: number, noAssert?: boolean): number;
478+
readUInt32BE(offset: number, noAssert?: boolean): number;
479+
readInt8(offset: number, noAssert?: boolean): number;
480+
readInt16LE(offset: number, noAssert?: boolean): number;
481+
readInt16BE(offset: number, noAssert?: boolean): number;
482+
readInt32LE(offset: number, noAssert?: boolean): number;
483+
readInt32BE(offset: number, noAssert?: boolean): number;
484+
readFloatLE(offset: number, noAssert?: boolean): number;
485+
readFloatBE(offset: number, noAssert?: boolean): number;
486+
readDoubleLE(offset: number, noAssert?: boolean): number;
487+
readDoubleBE(offset: number, noAssert?: boolean): number;
488+
swap16(): Buffer;
489+
swap32(): Buffer;
490+
swap64(): Buffer;
491+
writeUInt8(value: number, offset: number, noAssert?: boolean): number;
492+
writeUInt16LE(value: number, offset: number, noAssert?: boolean): number;
493+
writeUInt16BE(value: number, offset: number, noAssert?: boolean): number;
494+
writeUInt32LE(value: number, offset: number, noAssert?: boolean): number;
495+
writeUInt32BE(value: number, offset: number, noAssert?: boolean): number;
496+
writeInt8(value: number, offset: number, noAssert?: boolean): number;
497+
writeInt16LE(value: number, offset: number, noAssert?: boolean): number;
498+
writeInt16BE(value: number, offset: number, noAssert?: boolean): number;
499+
writeInt32LE(value: number, offset: number, noAssert?: boolean): number;
500+
writeInt32BE(value: number, offset: number, noAssert?: boolean): number;
501+
writeFloatLE(value: number, offset: number, noAssert?: boolean): number;
502+
writeFloatBE(value: number, offset: number, noAssert?: boolean): number;
503+
writeDoubleLE(value: number, offset: number, noAssert?: boolean): number;
504+
writeDoubleBE(value: number, offset: number, noAssert?: boolean): number;
505+
fill(value: any, offset?: number, end?: number): this;
506+
indexOf(value: string | number | Buffer, byteOffset?: number, encoding?: string): number;
507+
lastIndexOf(value: string | number | Buffer, byteOffset?: number, encoding?: string): number;
508+
entries(): IterableIterator<[number, number]>;
509+
includes(value: string | number | Buffer, byteOffset?: number, encoding?: string): boolean;
510+
keys(): IterableIterator<number>;
511+
values(): IterableIterator<number>;
512+
}
513+
514+
/*@internal*/
515+
interface Buffer extends NodeBuffer { }
516+
457517
// TODO: GH#18217 Methods on System are often used as if they are certainly defined
458518
export interface System {
459519
args: string[];

Diff for: src/compiler/tsconfig.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"extends": "../tsconfig-base",
33
"compilerOptions": {
4-
"outFile": "../../built/local/compiler.js"
4+
"outFile": "../../built/local/compiler/compiler.js"
55
},
66

77
"references": [],

Diff for: src/compiler/tsconfig.release.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"extends": "./tsconfig.json",
33
"compilerOptions": {
4-
"outFile": "../../built/local/compiler.release.js",
4+
"outFile": "../../built/local/compiler/compiler.release.js",
55
"removeComments": true,
66
"preserveConstEnums": false
77
}

Diff for: src/compiler/types.ts

+1
Original file line numberDiff line numberDiff line change
@@ -6024,6 +6024,7 @@ namespace ts {
60246024
// The above fallback to `object` when there's no args to allow `{}` (as intended), but not the number 2, for example
60256025
// TODO: Swap to `undefined` for a cleaner API once strictNullChecks is enabled
60266026

6027+
/* @internal */
60276028
type ConcretePragmaSpecs = typeof commentPragmas;
60286029

60296030
/* @internal */

Diff for: src/jsTyping/tsconfig.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"extends": "../tsconfig-base",
33
"compilerOptions": {
4-
"outFile": "../../built/local/jsTyping.js",
4+
"outFile": "../../built/local/jsTyping/jsTyping.js",
55
"types": [
66
"node"
77
],

Diff for: src/server/editorServices.ts

+1
Original file line numberDiff line numberDiff line change
@@ -335,6 +335,7 @@ namespace ts.server {
335335
RootOfInferredProjectFalse = "Open file was set as not inferred root",
336336
}
337337

338+
/*@internal*/
338339
interface ConfigFileExistenceInfo {
339340
/**
340341
* Cached value of existence of config file

Diff for: src/server/tsconfig.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"extends": "../tsconfig-base",
33
"compilerOptions": {
4-
"removeComments": true,
5-
"outFile": "../../built/local/server.js",
4+
"removeComments": false,
5+
"outFile": "../../built/local/server/server.js",
66
"preserveConstEnums": true,
77
"types": [
88
"node"

Diff for: src/services/codefixes/generateTypes.ts

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ namespace ts {
1616
return textChanges.getNewFileText(toStatements(valueInfo, outputKind), ScriptKind.TS, formatSettings.newLineCharacter || "\n", formatting.getFormatContext(formatSettings));
1717
}
1818

19+
/* @internal */
1920
const enum OutputKind { ExportEquals, NamedExport, NamespaceMember, Global }
2021
function toNamespaceMemberStatements(info: ValueInfo): ReadonlyArray<Statement> {
2122
return toStatements(info, OutputKind.NamespaceMember);

Diff for: src/services/tsconfig.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"extends": "../tsconfig-base",
33
"compilerOptions": {
4-
"outFile": "../../built/local/services.js"
4+
"outFile": "../../built/local/services/services.js"
55
},
66
"references": [
77
{ "path": "../compiler" },

Diff for: src/tsconfig-library-base.json

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"extends": "./tsconfig-base",
3+
"compilerOptions": {
4+
"declarationMap": false,
5+
"composite": false,
6+
"declaration": true,
7+
"stripInternal": true
8+
}
9+
}

Diff for: src/tsserverlibrary/tsconfig.json

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"extends": "../tsconfig-library-base",
3+
"compilerOptions": {
4+
"outFile": "../../built/local/tsserverlibrary/tsserverlibrary.js"
5+
},
6+
"files": [
7+
"tsserverlibrary.ts"
8+
],
9+
"references": [
10+
{ "path": "../compiler", "prepend": true },
11+
{ "path": "../jsTyping", "prepend": true },
12+
{ "path": "../services", "prepend": true },
13+
{ "path": "../server", "prepend": true }
14+
]
15+
}

Diff for: src/tsserverlibrary/tsserverlibrary.ts

Whitespace-only changes.

Diff for: src/typescriptServices/tsconfig.json

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"extends": "../tsconfig-library-base",
3+
"compilerOptions": {
4+
"outFile": "../../built/local/typescriptServices/typescriptServices.js"
5+
},
6+
"files": [
7+
"typescriptServices.ts"
8+
],
9+
"references": [
10+
{ "path": "../compiler", "prepend": true },
11+
{ "path": "../jsTyping", "prepend": true },
12+
{ "path": "../services", "prepend": true }
13+
]
14+
}

Diff for: src/typescriptServices/typescriptServices.ts

Whitespace-only changes.

0 commit comments

Comments
 (0)