Skip to content
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

Port all babel-parser changes from 2019-01-28 to 2019-03-26 #440

Merged
merged 1 commit into from
Mar 31, 2019

Conversation

alangpierce
Copy link
Owner

Fixes #437

Details:
828169e61 Fix line continuation with Unicode line terminators (#9403)
🚫 We don't do escape parsing anyway.

4c4c22a31 Run prettier
🚫 Tools only.

00c3e3c8e Fixed link to @babel/parser's issues in README (#9427)
🚫 Docs only.

9eb010da5 Unify reserved word checking and update error messages (#9402)
🚫 Error handling only.

344d35bbe Simplify await and yield tracking in params (#9405)
🚫 Error handling only.

d896ce2b5 v7.3.2
🚫 Release only.

e03e5ba01 Add TypeScript definitions for parser plugin options. (#9457)
🚫 Types only.

07b0f22a3 Fix range for TypeScript optional parameter in arrow function (#9463)
🚫 AST only.

d1514f57b Typescript function destructured params (#9431)
🚫 Already fixed in my code (with a fix that I think is better).

2817844e8 Fix regression with let (#9477)
🚫 This doesn't seem to affect Sucrase.

d349b74a4 Better error output in parser tests (#9491)
🚫 Test only.

4ba998c5d Add importKind to spec
🚫 Types only.

d1fe2d05f v7.3.3
🚫 Release only.

058f05742 Also check AssignmentPatterns for export name (#9521)
🚫 Error handling only.

a1ea765b9 Make tests spec compliant and avoid duplicate declarations in input files (#9522)
🚫 Test only.

dd8b700a2 Parenthesized expressions (#8025)
🚫 New feature that won't go into Sucrase.

9f3457797 Fix TypeScript parsers missing token check (#9571) (#9572)
✅ Added new check with test.

fc1ea7f49 Revert "Parenthesized expressions (#8025)"
🚫 New feature that won't go into Sucrase.

1f6454cc9 v7.3.4
🚫 Release only.

a7391144b Introduce scope tracking in the parser (#9493)
🚫 Looks like this is just for error handling.

e6c1065d1 Fix strict mode prescanning with EmptyStatement (#9585)
🚫 We don't detect strict mode.

d0e196d21 Treat for loop body as part of loop scope (#9586)
🚫 Scopes not tracked in Sucrase in the same way.

0345c1bc1 Use for..of Object.keys instead of for..in (#9518)
🚫 Not relevant for Sucrase.

244e4580e Remove always false param allowExpressionBody (#9591)
✅ Removed, plus removed some other unnecessary params.

a029071b8 [TS] Correctly forget awaits after parsing async arrows with type args (#9593)
🚫 Doesn't come up in Sucrase.

e883ff295 Merge pull request #9597 from danez/Update-charcodes
🚫 Mostly just changes in types.

43eed1ac9 Check exported bindings are defined (#9589)
🚫 Error handling only.

5cb280f98 Fix scope check for 2nd+ lexical bindings (#9600)
🚫 Error handling only.

208195f42 Disallow duplicate params in methods (#9599)
🚫 Error handling only.

98ab1b642 Refactor parsing object members (#9607)
🚫 I won't try to port this refactor for now.

f13f4adcb [TS] Disallow type casts in arrow parameters (#9612)
🚫 Error handling only.

17f4195bc Allow any reserved word in export {} from specifiers (#9616)
🚫 Already works in Sucrase.

c60c4dd37 Partial Application Syntax: Stage 1 (#9343)
✅ Added basic parsing for ? expression.

d832c0f43 Add parser support for placeholders (#9364)
🚫 I won't include this feature in Sucrase.

54ba6d80c Update identifier parsing per Unicode v12 (#9637)
🚫 Sucrase doesn't need this validation.

29999007f Disallow escape sequences in contextual keywords (#9618)
🚫 We don't support identifier escape sequences in the first place.

fba5655a4 Parenthesized expressions (#8025)
🚫 I won't include this feature in Sucrase.

e53be4b38 [TS] Allow context type annotation on getters/setters (#9641)
🚫 Bug in validation that Sucrase doesn't do.

d8a532983 Reorganize token types and use a map for them (#9645)
🚫 Not really relevant for current Sucrase code.

cf4bd8bb8 Remove input and length from state (#9646)
🚫 Not relevant for Sucrase.

29cd27b54 Partial application plugin (#9474)
🚫 Tests only.

25a3825a1 TypeScript Constant contexts (#9534)
✅ Added test, already works from previous change to make it an identifier.

cc4560842 Add readonly to TypeScript type modifier (#9529)
✅ Added new case with test.

48d66eb64 Correctly parse TS TypeAssertions around arrow functions (#9699)
🚫 AST only, I think.

f1328fb91 v7.4.0
🚫 Release only.

ab41cb2cd Fix scope checks with enabled flow plugin (#9719)
🚫 Scope code doesn't exist in Sucrase.

2201fd839 Modules might be in loose mode when checking for undecl exports (#9725)
🚫 Sucrase always uses strict mode.

7dea0f23d v7.4.2
🚫 Release only.

ef0722b4b Fix compatibility between estree and TS plugin (#9700)
🚫 Sucrase doesn't support estree mode.

aaefc83a6 Allow HTML comments on first line (#9760)
🚫 Unclear what this is needed for, but doesn't seem important in Sucrase.

d720c6cff Explicit labels for tokenTypes (#9761)
🚫 Internal change.

444daf922 Optimize parseBindingAtom code to get better error messages (#9762)
🚫 Error checking only.

2867bbf19 [typescript] parsing template literal as type (#9748)
✅ Added new case with test.

7f4427432 Parse right-hand-side of for/of as an assignment expression (#9767)
🚫 Error checking only.

6bc9e7ebd Correctly check for-in and for-of loop for invalid left-hand side (#9768)
🚫 Error checking only.

60d7e940e Fix merge error
🚫 Not relevant to Sucrase.

Fixes #437

Details:
828169e61 Fix line continuation with Unicode line terminators (#9403)
🚫 We don't do escape parsing anyway.

4c4c22a31 Run prettier
🚫 Tools only.

00c3e3c8e Fixed link to @babel/parser's issues in README (#9427)
🚫 Docs only.

9eb010da5 Unify reserved word checking and update error messages (#9402)
🚫 Error handling only.

344d35bbe Simplify await and yield tracking in params (#9405)
🚫 Error handling only.

d896ce2b5 v7.3.2
🚫 Release only.

e03e5ba01 Add TypeScript definitions for parser plugin options. (#9457)
🚫 Types only.

07b0f22a3 Fix range for TypeScript optional parameter in arrow function (#9463)
🚫 AST only.

d1514f57b Typescript function destructured params (#9431)
🚫 Already fixed in my code (with a fix that I think is better).

2817844e8 Fix regression with let (#9477)
🚫 This doesn't seem to affect Sucrase.

d349b74a4 Better error output in parser tests (#9491)
🚫 Test only.

4ba998c5d Add importKind to spec
🚫 Types only.

d1fe2d05f v7.3.3
🚫 Release only.

058f05742 Also check AssignmentPatterns for export name (#9521)
🚫 Error handling only.

a1ea765b9 Make tests spec compliant and avoid duplicate declarations in input files (#9522)
🚫 Test only.

dd8b700a2 Parenthesized expressions (#8025)
🚫 New feature that won't go into Sucrase.

9f3457797 Fix TypeScript parsers missing token check (#9571) (#9572)
✅ Added new check with test.

fc1ea7f49 Revert "Parenthesized expressions (#8025)"
🚫 New feature that won't go into Sucrase.

1f6454cc9 v7.3.4
🚫 Release only.

a7391144b Introduce scope tracking in the parser (#9493)
🚫 Looks like this is just for error handling.

e6c1065d1 Fix strict mode prescanning with EmptyStatement (#9585)
🚫 We don't detect strict mode.

d0e196d21 Treat for loop body as part of loop scope (#9586)
🚫 Scopes not tracked in Sucrase in the same way.

0345c1bc1 Use `for..of Object.keys` instead of `for..in` (#9518)
🚫 Not relevant for Sucrase.

244e4580e Remove always false param allowExpressionBody (#9591)
✅ Removed, plus removed some other unnecessary params.

a029071b8 [TS] Correctly forget `await`s after parsing async arrows with type args (#9593)
🚫 Doesn't come up in Sucrase.

e883ff295 Merge pull request #9597 from danez/Update-charcodes
🚫 Mostly just changes in types.

43eed1ac9 Check exported bindings are defined (#9589)
🚫 Error handling only.

5cb280f98 Fix scope check for 2nd+ lexical bindings (#9600)
🚫 Error handling only.

208195f42 Disallow duplicate params in methods (#9599)
🚫 Error handling only.

98ab1b642 Refactor parsing object members (#9607)
🚫 I won't try to port this refactor for now.

f13f4adcb [TS] Disallow type casts in arrow parameters (#9612)
🚫 Error handling only.

17f4195bc Allow any reserved word in `export {} from` specifiers (#9616)
🚫 Already works in Sucrase.

c60c4dd37 Partial Application Syntax: Stage 1 (#9343)
✅ Added basic parsing for ? expression.

d832c0f43 Add parser support for placeholders (#9364)
🚫 I won't include this feature in Sucrase.

54ba6d80c Update identifier parsing per Unicode v12 (#9637)
🚫 Sucrase doesn't need this validation.

29999007f Disallow escape sequences in contextual keywords (#9618)
🚫 We don't support identifier escape sequences in the first place.

fba5655a4 Parenthesized expressions (#8025)
🚫 I won't include this feature in Sucrase.

e53be4b38 [TS] Allow context type annotation on getters/setters (#9641)
🚫 Bug in validation that Sucrase doesn't do.

d8a532983 Reorganize token types and use a map for them (#9645)
🚫 Not really relevant for current Sucrase code.

cf4bd8bb8 Remove input and length from state (#9646)
🚫 Not relevant for Sucrase.

29cd27b54 Partial application plugin (#9474)
🚫 Tests only.

25a3825a1 TypeScript Constant contexts (#9534)
✅ Added test, already works from previous change to make it an identifier.

cc4560842 Add `readonly` to TypeScript type modifier (#9529)
✅ Added new case with test.

48d66eb64 Correctly parse TS TypeAssertions around arrow functions (#9699)
🚫 AST only, I think.

f1328fb91 v7.4.0
🚫 Release only.

ab41cb2cd Fix scope checks with enabled flow plugin (#9719)
🚫 Scope code doesn't exist in Sucrase.

2201fd839 Modules might be in loose mode when checking for undecl exports (#9725)
🚫 Sucrase always uses strict mode.

7dea0f23d v7.4.2
🚫 Release only.

ef0722b4b Fix compatibility between estree and TS plugin (#9700)
🚫 Sucrase doesn't support estree mode.

aaefc83a6 Allow HTML comments on first line (#9760)
🚫 Unclear what this is needed for, but doesn't seem important in Sucrase.

d720c6cff Explicit labels for tokenTypes (#9761)
🚫 Internal change.

444daf922 Optimize parseBindingAtom code to get better error messages (#9762)
🚫 Error checking only.

2867bbf19 [typescript] parsing template literal as type (#9748)
✅ Added new case with test.

7f4427432 Parse right-hand-side of for/of as an assignment expression (#9767)
🚫 Error checking only.

6bc9e7ebd Correctly check for-in and for-of loop for invalid left-hand side (#9768)
🚫 Error checking only.

60d7e940e Fix merge error
🚫 Not relevant to Sucrase.
@codecov-io
Copy link

Codecov Report

Merging #440 into master will increase coverage by 0.04%.
The diff coverage is 90%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #440      +/-   ##
==========================================
+ Coverage   81.09%   81.14%   +0.04%     
==========================================
  Files          49       49              
  Lines        5370     5134     -236     
  Branches     1204     1200       -4     
==========================================
- Hits         4355     4166     -189     
+ Misses        716      672      -44     
+ Partials      299      296       -3
Impacted Files Coverage Δ
src/parser/plugins/flow.ts 64.41% <75%> (+1.91%) ⬆️
src/parser/plugins/typescript.ts 79.26% <87.5%> (+0.31%) ⬆️
src/parser/traverser/statement.ts 82.2% <90%> (+1.08%) ⬆️
src/parser/traverser/expression.ts 82.81% <94.44%> (-0.49%) ⬇️
src/util/getDeclarationInfo.ts 80% <0%> (-20%) ⬇️
src/parser/index.ts 77.77% <0%> (-7.94%) ⬇️
src/index.ts 82.85% <0%> (-6.51%) ⬇️
src/computeSourceMap.ts 83.33% <0%> (-5.56%) ⬇️
src/util/getNonTypeIdentifiers.ts 94.44% <0%> (-5.56%) ⬇️
src/util/getTSImportedNames.ts 81.57% <0%> (-3.79%) ⬇️
... and 20 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e5e9003...80ec19a. Read the comment docs.

@alangpierce alangpierce merged commit fd0f689 into master Mar 31, 2019
@alangpierce alangpierce deleted the port-early-2019-babel-parser branch March 31, 2019 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Readonly arrays and readonly tuples
2 participants