Skip to content

Commit c8a3ae3

Browse files
committed
Merge branch 'master' into Destructuring_assignment_assignability_check
2 parents af362cc + c2e74ae commit c8a3ae3

10,882 files changed

Lines changed: 977980 additions & 444488 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/ISSUE_TEMPLATE/Bug_report.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ Please fill in the *entire* template below.
1616
-->
1717

1818
<!-- Please try to reproduce the issue with `typescript@next`. It may have already been fixed. -->
19-
**TypeScript Version:** 3.0.0-dev.201xxxxx
19+
**TypeScript Version:** 3.3.0-dev.201xxxxx
2020

2121
<!-- Search terms you tried before logging this (so others can find this issue more easily) -->
22-
**Search Terms:**
22+
**Search Terms:**
2323

2424
**Code**
2525

@@ -32,6 +32,6 @@ Please fill in the *entire* template below.
3232

3333
**Actual behavior:**
3434

35-
**Playground Link:** <!-- A link to a TypeScript Playground "Share" link which demonstrates this behavior -->
35+
**Playground Link:** <!-- A link to a TypeScript Playground "Share" link which demonstrates this behavior -->
3636

3737
**Related Issues:** <!-- Did you find other bugs that looked similar? -->

.github/ISSUE_TEMPLATE/Feature_request.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,10 @@ What shortcomings exist with current approaches?
3232
## Checklist
3333

3434
My suggestion meets these guidelines:
35-
* [ ] This wouldn't be a breaking change in existing TypeScript / JavaScript code
35+
36+
* [ ] This wouldn't be a breaking change in existing TypeScript/JavaScript code
3637
* [ ] This wouldn't change the runtime behavior of existing JavaScript code
3738
* [ ] This could be implemented without emitting different JS based on the types of the expressions
38-
* [ ] This isn't a runtime feature (e.g. new expression-level syntax)
39+
* [ ] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
40+
* [ ] This feature would agree with the rest of [TypeScript's Design Goals](https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals).
3941

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,4 +74,6 @@ tests/cases/user/*/**/*.d.ts
7474
!tests/cases/user/bignumber.js/
7575
!tests/cases/user/discord.js/
7676
tests/baselines/reference/dt
77-
.failed-tests
77+
.failed-tests
78+
TEST-results.xml
79+
package-lock.json

.mailmap

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ Rostislav Galimsky <rostgal@gmail.com>
163163
Richard Knoll <riknoll@users.noreply.github.com> Richard Knoll <riknoll@microsoft.com>
164164
Richard Karmazín <richard@karmazin.cz>
165165
Rowan Wyborn <rwyborn@internode.on.net>
166-
Ryan Cavanaugh <RyanCavanaugh@users.noreply.github.com> Ryan Cavanaugh <ryan.cavanaugh@microsoft.com> Ryan Cavanaugh <ryanca@microsoft.com>
166+
Ryan Cavanaugh <RyanCavanaugh@users.noreply.github.com> Ryan Cavanaugh <ryan.cavanaugh@microsoft.com> Ryan Cavanaugh <ryanca@microsoft.com> Ryan Cavanaugh <the.ryan.cavanaugh@gmail.com>
167167
Ryohei Ikegami <iofg2100@gmail.com>
168168
Sarangan Rajamanickam <sarajama@microsoft.com>
169169
Sébastien Arod <sebastien.arod@gmail.com>
@@ -340,4 +340,22 @@ EcoleKeine <Ecole_k@qq.com> # Ecole Keine
340340
Khải <hvksmr1996@gmail.com>
341341
rhysd <lin90162@yahoo.co.jp> # @rhysd
342342
Zen <843968788@qq.com> Zzzen <843968788@qq.com> # @Zzzen
343-
bluelovers <codelovers@users.sourceforge.net> # @bluelovers
343+
bluelovers <codelovers@users.sourceforge.net> # @bluelovers
344+
Dan Freeman <dfreeman@salsify.com>
345+
David Sherret <dsherret@gmail.com>
346+
David Staheli <dastahel@microsoft.com>
347+
Elizabeth Dinella <elizabeth.a.dinella@gmail.com>
348+
John Doe <github.john.doe@outlook.com>
349+
Kevin Gibbons <kevin@shapesecurity.com>
350+
Markus Johnsson <markus.johnsson@infviz.com>
351+
Martin Probst <martin@probst.io>
352+
Mateusz Burzyński <mateuszburzynski@gmail.com>
353+
Steven <steven@ceriously.com> # @styfle
354+
Pi Lanningham <pi.lanningham@gmail.com>
355+
Sam Bostock <sam.bostock@shopify.com>
356+
Vimal Raghubir <vraghubir0418@gmail.com>
357+
Vyacheslav Pukhanov <vyacheslav.pukhanov@gmail.com>
358+
dangoo <daniel.gooss@sinnerschrader.com> # Daniel Gooss
359+
krk <keremkat@gmail.com> # Kerem Kat
360+
micnic <micnic90@gmail.com> # Nicu Micleușanu
361+
rflorian <rflorian@users.noreply.github.com> # @rflorian

.npmignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,10 @@ Jakefile.js
1919
.circleci
2020
.vscode/
2121
.parallelperf.json
22+
.mailmap
2223
test.config
2324
package-lock.json
2425
yarn.lock
2526
.github/
2627
CONTRIBUTING.md
28+
TEST-results.xml

.npmrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
package-lock=false

.travis.yml

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
language: node_js
22

33
node_js:
4-
- 'stable'
5-
- '8'
4+
- 'node'
5+
- '10'
66
- '6'
77

88
sudo: false
@@ -16,9 +16,7 @@ matrix:
1616
branches:
1717
only:
1818
- master
19-
- release-2.7
20-
- release-2.8
21-
- release-2.9
19+
- /^release-.*/
2220

2321
install:
2422
- npm uninstall typescript --no-save

AUTHORS.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,15 +74,19 @@ TypeScript is authored by:
7474
* Dafrok Zhang
7575
* Dahan Gong
7676
* Dan Corder
77+
* Dan Freeman
7778
* Dan Quirk
79+
* Daniel Gooss
7880
* Daniel Hollocher
7981
* Daniel Król
8082
* Daniel Lehenbauer
8183
* Daniel Rosenwasser
8284
* David Kmenta
8385
* David Li
8486
* David Sheldrick
87+
* David Sherret
8588
* David Souther
89+
* David Staheli
8690
* Denis Nedelyaev
8791
* Derek P Sifford
8892
* Dhruv Rajvanshi
@@ -96,6 +100,7 @@ TypeScript is authored by:
96100
* @e-cloud
97101
* Ecole Keine
98102
* Elisée Maurer
103+
* Elizabeth Dinella
99104
* Emilio García-Pumarino
100105
* Eric Grube
101106
* Eric Tsang
@@ -161,6 +166,7 @@ TypeScript is authored by:
161166
* Joel Day
162167
* Joey Wilson
163168
* Johannes Rieken
169+
* John Doe
164170
* John Vilk
165171
* Jonathan Bond-Caron
166172
* Jonathan Park
@@ -184,7 +190,9 @@ TypeScript is authored by:
184190
* Keith Mashinter
185191
* Ken Howard
186192
* Kenji Imamula
193+
* Kerem Kat
187194
* Kevin Donnelly
195+
* Kevin Gibbons
188196
* Kevin Lang
189197
* Khải
190198
* Kitson Kelly
@@ -201,10 +209,13 @@ TypeScript is authored by:
201209
* Manish Giri
202210
* Marin Marinov
203211
* Marius Schulz
212+
* Markus Johnsson
204213
* Martin Hiller
214+
* Martin Probst
205215
* Martin Vseticka
206216
* Martyn Janes
207217
* Masahiro Wakame
218+
* Mateusz Burzyński
208219
* Matt Bierner
209220
* Matt McCutchen
210221
* Matt Mitchell
@@ -223,10 +234,10 @@ TypeScript is authored by:
223234
* Mohamed Hegazy
224235
* Mohsen Azimi
225236
* Myles Megyesi
226-
* Natalie Coley
227237
* Nathan Shively-Sanders
228238
* Nathan Yee
229239
* Nicolas Henry
240+
* Nicu Micleușanu
230241
* @nieltg
231242
* Nima Zahedi
232243
* Noah Chen
@@ -248,6 +259,7 @@ TypeScript is authored by:
248259
* Peter Burns
249260
* Philip Bulley
250261
* Philippe Voinov
262+
* Pi Lanningham
251263
* Piero Cangianiello
252264
* @piloopin
253265
* Prayag Verma
@@ -270,6 +282,7 @@ TypeScript is authored by:
270282
* Rowan Wyborn
271283
* Ryan Cavanaugh
272284
* Ryohei Ikegami
285+
* Sam Bostock
273286
* Sam El-Husseini
274287
* Sarangan Rajamanickam
275288
* Sean Barag
@@ -290,6 +303,7 @@ TypeScript is authored by:
290303
* Stas Vilchik
291304
* Stephan Ginthör
292305
* Steve Lucco
306+
* @styfle
293307
* Sudheesh Singanamalla
294308
* Sébastien Arod
295309
* @T18970237136
@@ -316,8 +330,10 @@ TypeScript is authored by:
316330
* Vidar Tonaas Fauske
317331
* Viktor Zozulyak
318332
* Vilic Vane
333+
* Vimal Raghubir
319334
* Vladimir Kurchatkin
320335
* Vladimir Matveev
336+
* Vyacheslav Pukhanov
321337
* Wenlu Wang
322338
* Wesley Wigham
323339
* William Orr

CODE_OF_CONDUCT.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

CONTRIBUTING.md

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ Design changes will not be accepted at this time. If you have a design change pr
6161

6262
You will need to complete a Contributor License Agreement (CLA). Briefly, this agreement testifies that you are granting us permission to use the submitted change according to the terms of the project's license, and that the work being submitted is under appropriate copyright.
6363

64-
Please submit a Contributor License Agreement (CLA) before submitting a pull request. You may visit https://cla.microsoft.com to sign digitally. Alternatively, download the agreement ([Microsoft Contribution License Agreement.docx](https://www.codeplex.com/Download?ProjectName=typescript&DownloadId=822190) or [Microsoft Contribution License Agreement.pdf](https://www.codeplex.com/Download?ProjectName=typescript&DownloadId=921298)), sign, scan, and email it back to <cla@microsoft.com>. Be sure to include your github user name along with the agreement. Once we have received the signed CLA, we'll review the request.
64+
Please submit a Contributor License Agreement (CLA) before submitting a pull request. You may visit https://cla.microsoft.com to sign digitally. Alternatively, download the agreement ([Microsoft Contribution License Agreement.pdf](https://opensource.microsoft.com/pdf/microsoft-contribution-license-agreement.pdf)), sign, scan, and email it back to <cla@microsoft.com>. Be sure to include your github user name along with the agreement. Once we have received the signed CLA, we'll review the request.
6565

6666
## Housekeeping
6767

@@ -72,7 +72,7 @@ Your pull request should:
7272
* Requests need not be a single commit, but should be a linear sequence of commits (i.e. no merge commits in your PR)
7373
* It is desirable, but not necessary, for the tests to pass at each commit
7474
* Have clear commit messages
75-
* e.g. "Refactor feature", "Fix issue", "Add tests for issue"
75+
* e.g. "Minor refactor in goToTypeDefinition", "Fix iterated type in for-await-of", "Add test for preserveWatchOutput on command line"
7676
* Include adequate tests
7777
* At least one test should fail in the absence of your non-test code changes. If your PR does not match this criteria, please specify why
7878
* Tests should include reasonable permutations of the target fix/change
@@ -82,19 +82,26 @@ Your pull request should:
8282
* To avoid line ending issues, set `autocrlf = input` and `whitespace = cr-at-eol` in your git configuration
8383

8484
## Contributing `lib.d.ts` fixes
85-
86-
The library sources are in: [src/lib](https://github.com/Microsoft/TypeScript/tree/master/src/lib)
8785

88-
Library files in `built/local/` are updated by running
89-
```Shell
86+
There are three relevant locations to be aware of when it comes to TypeScript's library declaration files:
87+
88+
* `src/lib`: the location of the sources themselves.
89+
* `lib`: the location of the last-known-good (LKG) versions of the files which are updated periodically.
90+
* `built/local`: the build output location, including where `src/lib` files will be copied to.
91+
92+
Any changes should be made to [src/lib](https://github.com/Microsoft/TypeScript/tree/master/src/lib). **Most** of these files can be updated by hand, with the exception of any generated files (see below).
93+
94+
Library files in `built/local/` are updated automatically by running the standard build task:
95+
96+
```sh
9097
jake
9198
```
9299

93-
The files in `lib/` are used to bootstrap compilation and usually do not need to be updated.
100+
The files in `lib/` are used to bootstrap compilation and usually **should not** be updated unless publishing a new version or updating the LKG.
94101

95-
#### `src/lib/dom.generated.d.ts` and `src/lib/webworker.generated.d.ts`
102+
### Modifying generated library files
96103

97-
These two files represent the DOM typings and are auto-generated. To make any modifications to them, please submit a PR to https://github.com/Microsoft/TSJS-lib-generator
104+
The files `src/lib/dom.generated.d.ts` and `src/lib/webworker.generated.d.ts` both represent type declarations for the DOM and are auto-generated. To make any modifications to them, you will have to direct changes to https://github.com/Microsoft/TSJS-lib-generator
98105

99106
## Running the Tests
100107

@@ -104,7 +111,7 @@ To run all tests, invoke the `runtests-parallel` target using jake:
104111
jake runtests-parallel
105112
```
106113

107-
This run will all tests; to run only a specific subset of tests, use:
114+
This will run all tests; to run only a specific subset of tests, use:
108115

109116
```Shell
110117
jake runtests tests=<regex>
@@ -137,10 +144,10 @@ You can specify which browser to use for debugging. Currently Chrome and IE are
137144
jake runtests-browser tests=2dArrays browser=chrome
138145
```
139146

140-
You can debug with VS Code or Node instead with `jake runtests debug=true`:
147+
You can debug with VS Code or Node instead with `jake runtests inspect=true`:
141148

142149
```Shell
143-
jake runtests tests=2dArrays debug=true
150+
jake runtests tests=2dArrays inspect=true
144151
```
145152

146153
## Adding a Test
@@ -153,7 +160,7 @@ The supported names and values are the same as those supported in the compiler i
153160
They are useful for tests relating to modules.
154161
See below for examples.
155162

156-
**Note** that if you have a test corresponding to a specific spec compliance item, you can place it in `tests\cases\conformance` in an appropriately-named subfolder.
163+
**Note** that if you have a test corresponding to a specific spec compliance item, you can place it in `tests\cases\conformance` in an appropriately-named subfolder.
157164
**Note** that filenames here must be distinct from all other compiler testcase names, so you may have to work a bit to find a unique name if it's something common.
158165

159166
### Tests for multiple files
@@ -194,6 +201,6 @@ to establish the new baselines as the desired behavior. This will change the fil
194201
## Localization
195202

196203
All strings the user may see are stored in [`diagnosticMessages.json`](./src/compiler/diagnosticMessages.json).
197-
If you make changes to it, run `jake generate-diagnostics` to push them to the `Diagnostic` interface in [`diagnosticInformationMap.generated.ts`](./src/compiler/diagnosticInformationMap.generated.ts).
204+
If you make changes to it, run `jake generate-diagnostics` to push them to the `Diagnostic` interface in `diagnosticInformationMap.generated.ts`.
198205

199206
See [coding guidelines on diagnostic messages](https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines#diagnostic-messages).

0 commit comments

Comments
 (0)