Skip to content

Port fixes from master into release-2.5 #18360

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 63 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
eeb40fe
session.ts: Revert some `emptyArray` back to `undefined` (#17781)
Aug 14, 2017
8f02979
Accept missing baseline updates for #13721
weswigham Aug 14, 2017
a5c9f40
In services, show the aliasSymbol for a type even if it's not accessi…
Aug 15, 2017
f45ec92
Fixed lints.
DanielRosenwasser Aug 17, 2017
b326ac6
Merge pull request #17856 from Microsoft/synthesizedNamespaces
DanielRosenwasser Aug 17, 2017
4e570f0
Revert public API changes to logger (#17901)
Aug 18, 2017
b3ac765
Updated version for next publish.
DanielRosenwasser Aug 18, 2017
baeedab
Accepted LKG
DanielRosenwasser Aug 18, 2017
ba56b62
Ensure string enums are generated in protocol.d.ts
mhegazy Aug 18, 2017
3e5de59
Update LKG
mhegazy Aug 18, 2017
f5698fc
Merge branch 'EmitStringEnumsInProtocol' into release-2.5
mhegazy Aug 18, 2017
34e4209
Allow use before declaration for export= assignments (#17967) (#17972)
weswigham Aug 23, 2017
1420fbc
Bind logger function before using (#17983)
mhegazy Aug 23, 2017
6da73b0
Port #17771 to release-2.5 (#18018)
mhegazy Aug 24, 2017
952e9ca
Remove debug assertions due to invalid syntax in generators transform
rbuckton Aug 18, 2017
80601fc
Fix crash when exporting class without name
rbuckton Aug 24, 2017
09e7e88
Add missing visitNode call to object literal members
Yogu Jun 27, 2017
d48ac07
Add test case for nested object spread / methods
Yogu Jun 27, 2017
13eeb34
Ignore scripts for types packages (#17969)
RyanCavanaugh Aug 24, 2017
ec8f5cf
Follow symbol through commonjs require for inferred class type
rbuckton Jun 22, 2017
9bb1915
PR feedback
rbuckton Aug 11, 2017
01b7df6
Switch to arrow for ts class wrapper IIFE
rbuckton Aug 24, 2017
0851f69
Added additional test
rbuckton Aug 24, 2017
350c9f6
Call dynamic import transform on expression used by export equal stat…
weswigham Aug 25, 2017
a39ae1f
Fix crash when attempting to merge an import with a local declaration…
weswigham Aug 25, 2017
3644771
Test for action description of code actions, and simplify description…
Aug 25, 2017
62678cd
Don't try to extract `import` to a method: simpler fix (#18054)
Aug 25, 2017
187a21c
Fix crash in name resolution with custom transforms and emitDecorator…
rbuckton Aug 25, 2017
2a2773f
Update LKG
mhegazy Aug 25, 2017
15a0d3f
Update version
mhegazy Aug 29, 2017
6ffe829
Update LKG
mhegazy Aug 29, 2017
6425ea2
Don't crash when a JS file appears in an inferred context
RyanCavanaugh Aug 29, 2017
20da159
Merge pull request #18127 from RyanCavanaugh/port18120_release25
RyanCavanaugh Aug 29, 2017
171c664
Update LKG
mhegazy Aug 30, 2017
4925f2f
Optimize relations for type references with unconstrained type arguments
ahejlsberg Aug 22, 2017
2510177
Fix to use correct target type ID
ahejlsberg Aug 22, 2017
f3700f6
Test performance improvement:nested reference skip
sandersn Aug 21, 2017
05477e4
Update baselines
sandersn Aug 23, 2017
0ff8eeb
Comment getTypeReferenceId and getRelationKey
sandersn Aug 23, 2017
16a4997
Fix 18224 (#18259) (#18292)
weswigham Sep 7, 2017
f5b9e30
Ensure that emitter calls callbacks (#18284) (#18325)
Sep 7, 2017
8aaace0
Update version
mhegazy Sep 7, 2017
655145c
Update LKG
mhegazy Sep 7, 2017
d3ce606
Disable lookahead in isStartOfParameter/isStartOfType
sandersn Sep 6, 2017
7f639cc
Test:disable lookahead in isStartOfParameter
sandersn Sep 6, 2017
236eb1e
Rename isStartOfType parameter used by isStartOfParameter
sandersn Sep 7, 2017
9434a81
extractMethod: Support renameLocation (#18351)
Sep 9, 2017
c476a08
Update LKG
mhegazy Sep 9, 2017
319bc2b
Test: parsing of two-line @typedef jsdoc
sandersn Sep 7, 2017
745dd6a
Fix forEachChild's visit of JSDocTypedefTag
sandersn Sep 7, 2017
de413a4
Update baselines
sandersn Sep 7, 2017
8b26919
Inline variable to aid control flow
sandersn Sep 8, 2017
9a5ddc0
Improved caching scheme for anonymous types
ahejlsberg Sep 2, 2017
5169542
Fix signature help
ahejlsberg Sep 2, 2017
9711d66
Optimize caching of type literals
ahejlsberg Sep 3, 2017
ee7e77a
Accept new baselines
ahejlsberg Sep 3, 2017
00cede1
Fix linting errors
ahejlsberg Sep 3, 2017
3f37044
Use canonicalized forms when comparing signatures
ahejlsberg Sep 6, 2017
8ef188e
Minor changes
ahejlsberg Sep 6, 2017
1ea1995
Document ThrottledOperations.schedule
amcasey Sep 5, 2017
dd9f4a1
Limit the number of unanswered typings installer requests
amcasey Sep 5, 2017
40c34d1
Fix lint issues
amcasey Sep 6, 2017
c505bc4
Add explanatory comment
amcasey Sep 6, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ matrix:
branches:
only:
- master
- release-2.5

install:
- npm uninstall typescript --no-save
Expand Down
2 changes: 1 addition & 1 deletion Gulpfile.ts
Original file line number Diff line number Diff line change
Expand Up @@ -776,7 +776,7 @@ gulp.task("browserify", "Runs browserify on run.js to produce a file suitable fo
const file = new Vinyl({ contents, path: bundlePath });
console.log(`Fixing sourcemaps for ${file.path}`);
// assumes contents is a Buffer, since that's what browserify yields
const maps = convertMap.fromSource(stringContent, /*largeSource*/ true).toObject();
const maps = convertMap.fromSource(stringContent).toObject();
delete maps.sourceRoot;
maps.sources = maps.sources.map(s => path.resolve(s === "_stream_0.js" ? "built/local/_stream_0.js" : s));
// Strip browserify's inline comments away (could probably just let sorcery do this, but then we couldn't fix the paths)
Expand Down
2 changes: 1 addition & 1 deletion lib/lib.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ interface ObjectConstructor {
* Returns the names of the enumerable properties and methods of an object.
* @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
*/
keys(o: any): string[];
keys(o: {}): string[];
}

/**
Expand Down
2 changes: 1 addition & 1 deletion lib/lib.es2015.symbol.wellknown.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ interface Map<K, V> {
readonly [Symbol.toStringTag]: "Map";
}

interface WeakMap<K extends object, V>{
interface WeakMap<K extends object, V> {
readonly [Symbol.toStringTag]: "WeakMap";
}

Expand Down
2 changes: 1 addition & 1 deletion lib/lib.es5.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ interface ObjectConstructor {
* Returns the names of the enumerable properties and methods of an object.
* @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
*/
keys(o: any): string[];
keys(o: {}): string[];
}

/**
Expand Down
4 changes: 2 additions & 2 deletions lib/lib.es6.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ interface ObjectConstructor {
* Returns the names of the enumerable properties and methods of an object.
* @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
*/
keys(o: any): string[];
keys(o: {}): string[];
}

/**
Expand Down Expand Up @@ -5689,7 +5689,7 @@ interface Map<K, V> {
readonly [Symbol.toStringTag]: "Map";
}

interface WeakMap<K extends object, V>{
interface WeakMap<K extends object, V> {
readonly [Symbol.toStringTag]: "WeakMap";
}

Expand Down
90 changes: 87 additions & 3 deletions lib/protocol.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -714,7 +714,7 @@ declare namespace ts.server.protocol {
/**
* An array of span groups (one per file) that refer to the item to be renamed.
*/
locs: SpanGroup[];
locs: ReadonlyArray<SpanGroup>;
}
/**
* Rename response message.
Expand Down Expand Up @@ -953,6 +953,12 @@ declare namespace ts.server.protocol {
* Compiler options to be used with inferred projects.
*/
options: ExternalProjectCompilerOptions;
/**
* Specifies the project root path used to scope compiler options.
* It is an error to provide this property if the server has not been started with
* `useInferredProjectPerProjectRoot` enabled.
*/
projectRootPath?: string;
}
/**
* Response to SetCompilerOptionsForInferredProjectsResponse request. This is just an acknowledgement, so
Expand Down Expand Up @@ -1922,6 +1928,7 @@ declare namespace ts.server.protocol {
paths?: MapLike<string[]>;
plugins?: PluginImport[];
preserveConstEnums?: boolean;
preserveSymlinks?: boolean;
project?: string;
reactNamespace?: string;
removeComments?: boolean;
Expand Down Expand Up @@ -1956,6 +1963,7 @@ declare namespace ts.server.protocol {
System = "System",
ES6 = "ES6",
ES2015 = "ES2015",
ESNext = "ESNext",
}
const enum ModuleResolutionKind {
Classic = "Classic",
Expand All @@ -1970,6 +1978,9 @@ declare namespace ts.server.protocol {
ES5 = "ES5",
ES6 = "ES6",
ES2015 = "ES2015",
ES2016 = "ES2016",
ES2017 = "ES2017",
ESNext = "ESNext",
}
}
declare namespace ts.server.protocol {
Expand All @@ -1991,6 +2002,81 @@ declare namespace ts.server.protocol {
position: number;
}

enum HighlightSpanKind {
none = "none",
definition = "definition",
reference = "reference",
writtenReference = "writtenReference",
}

enum ScriptElementKind {
unknown = "",
warning = "warning",
/** predefined type (void) or keyword (class) */
keyword = "keyword",
/** top level script node */
scriptElement = "script",
/** module foo {} */
moduleElement = "module",
/** class X {} */
classElement = "class",
/** var x = class X {} */
localClassElement = "local class",
/** interface Y {} */
interfaceElement = "interface",
/** type T = ... */
typeElement = "type",
/** enum E */
enumElement = "enum",
enumMemberElement = "enum member",
/**
* Inside module and script only
* const v = ..
*/
variableElement = "var",
/** Inside function */
localVariableElement = "local var",
/**
* Inside module and script only
* function f() { }
*/
functionElement = "function",
/** Inside function */
localFunctionElement = "local function",
/** class X { [public|private]* foo() {} } */
memberFunctionElement = "method",
/** class X { [public|private]* [get|set] foo:number; } */
memberGetAccessorElement = "getter",
memberSetAccessorElement = "setter",
/**
* class X { [public|private]* foo:number; }
* interface Y { foo:number; }
*/
memberVariableElement = "property",
/** class X { constructor() { } } */
constructorImplementationElement = "constructor",
/** interface Y { ():number; } */
callSignatureElement = "call",
/** interface Y { []:number; } */
indexSignatureElement = "index",
/** interface Y { new():Y; } */
constructSignatureElement = "construct",
/** function foo(*Y*: string) */
parameterElement = "parameter",
typeParameterElement = "type parameter",
primitiveType = "primitive type",
label = "label",
alias = "alias",
constElement = "const",
letElement = "let",
directory = "directory",
externalModuleName = "external module name",
/**
* <JsxTagName attribute1 attribute2={0} />
*/
jsxAttribute = "JSX attribute",
}

interface TypeAcquisition {
enableAutoDiscovery?: boolean;
enable?: boolean;
Expand Down Expand Up @@ -2026,8 +2112,6 @@ declare namespace ts.server.protocol {
}
declare namespace ts {
// these types are empty stubs for types from services and should not be used directly
export type HighlightSpanKind = never;
export type ScriptElementKind = never;
export type ScriptKind = never;
export type IndentStyle = never;
export type JsxEmit = never;
Expand Down
Loading