Commit Graph
100 Commits
Author SHA1 Message Date
Daniel Rosenwasser c395d17a32 Bump version to 5.3. 2023-08-07 22:51:43 +00:00
Daniel Rosenwasser 9e4c410caa Switch devcontainer to use Node.js 18. (#55299)
Also moved certain fields to `customizations`.
2023-08-07 15:44:15 -07:00
Daniel Rosenwasser f762de5220 Do not mark indexed access object type comparisons as unreliable. (#54781) 2023-06-26 13:21:10 -07:00
Daniel Rosenwasser 63a210bd1d Use replaceAll instead of an incorrect RegExp for tsserver log sanitization. (#54454) 2023-05-30 12:51:56 -07:00
Daniel Rosenwasser dad9ae0ce8 Bump version to 5.2 and update baselines. 2023-05-15 17:53:13 +00:00
Daniel Rosenwasser 1af17f8817 Fix transform flags for certain ES2020 features. (#52445) 2023-04-13 14:13:00 -07:00
Daniel Rosenwasser 23469e9cb3 Declare reportError as returning never in fourslash (#53741) 2023-04-11 13:59:40 -07:00
Daniel Rosenwasser f6f6cb893f Include type parameters in tagged template literals in isPartOfTypeNode (#53428) 2023-03-22 14:04:34 -07:00
Daniel Rosenwasser 7a0061aa96 Remove most direct uses of factory from src/compilers/transformers (#52957) 2023-02-27 11:05:41 -08:00
Daniel Rosenwasser 4374ffd628 Bump version to 5.1, fix 'ignoreDeprecations', and update baselines. (#52975) 2023-02-26 20:56:07 -08:00
Daniel Rosenwasser 3f7bf69ddf Destructure common factory methods in the parser. (#52920) 2023-02-24 12:52:30 -08:00
Daniel Rosenwasser 27376f1577 Swap closure state in the type-checker to var to avoid TDZ checks. (#52835) 2023-02-21 17:35:55 -08:00
Daniel Rosenwasser 04637662f4 Switch let/const to var in the scanner & parser for top-levelish variables. (#52832) 2023-02-17 17:07:11 -08:00
Daniel Rosenwasser 6aba9b8a24 Drop deferredNodes after checking them all. (#52606) 2023-02-13 13:50:57 -08:00
Daniel Rosenwasser 7fb6c99c19 Don't create an unnecessary text span in isInStringOrRegularExpressionOrTemplateLiteral (#52697) 2023-02-09 15:37:22 -08:00
Daniel Rosenwasser 06db35c893 Use early bail-out for contextual identifier checks. 2023-01-20 18:17:14 -08:00
Daniel Rosenwasser 3c99d50da5 Replace a few type assertions with annotations and satisfies. (#51685) 2022-12-06 11:52:17 -08:00
Daniel Rosenwasser 9a79aeb650 Update LKG. (#51683) 2022-11-29 12:05:35 -08:00
Daniel Rosenwasser c49c733c1f Bump version to 5.0. 2022-10-31 13:42:28 -07:00
Daniel Rosenwasser 0d0a793714 Allow Unicode extended escapes in ES5 and earlier (#50918)
* Remove language version check for extended escapes.

* Accepted baselines.

* Record whether nodes have extended Unicode escapes. Replace them in the es2015 transform.

* Accepted baselines.

* Move file to better-reflect generality of tests.

* Added tests for variables at the top level.

* Accepted baselines.

* Added test for extended astral character.

* Accepted baseline.

* Enable sourcemaps in tests.

* Accepted baselines.

* Call `setOriginalNode` on identifiers with extended escapes.
2022-09-30 01:22:01 -07:00
Daniel Rosenwasser 4ab9e76fb7 Use paths in package.json 'files' array that work with npm 6 and later. (#50930) 2022-09-23 16:05:20 -07:00
Daniel Rosenwasser 9740bcc534 Pluralized hasInvalidatedResolution -> hasInvalidatedResolutions (#50912)
* Pluralize hasInvalidatedResolution to hasInvalidatedResolutions.

* Accepted baselines.
2022-09-22 18:33:09 -07:00
Daniel Rosenwasser d90795e799 Improve escape sequence handling in private names (#50856)
* Add tests for identifiers and private identifiers with escape sequences.

* Accepted baselines.

* Store the tokenValue instead of tokenText on PrivateIdentifiers, since the latter can contain escapes and lead to semantic discrepancies.

* Accepted baselines.

* Check for leading escape sequences in PrivateIdentifiers.

* Accepted baselines.

* Fix lints.
2022-09-20 15:00:39 -07:00
Daniel Rosenwasser 0df46e8733 Fix test around RegExp match vs. exec results (#50813)
* Fix up test.

* Accepted baselines.
2022-09-16 16:47:33 -07:00
Daniel Rosenwasser fb717df6bf Discard union types before considering weak type checks on unit-like types (#50423)
* Only check isUnitType when dealing with non-unions.

* Add test case.

* Accepted baselines.
2022-08-24 11:39:00 -07:00
Daniel Rosenwasser 4605d89064 Use a mapped type to enforce type-safety on forEachChild. (#50409) 2022-08-22 17:30:44 -07:00
Daniel Rosenwasser 76357ba802 Swap forEachChild to use a table of functions instead of a switch statement. (#50225)
* Swap `forEachChild` to use an array of functions instead of a `switch` statement.

* Let's see if 'new' changes anything.

* Co-locate each assignment into `forEachChildTable`.

* Try `push`ing undefined to create a packed Array.

* Try using an unconditional no-op function.

* `forEach` -> `forEachChildIn`

* Remove the optional chain if we are pre-filling with no-ops.

* Grab function directly to avoid possible `.call` overhead from downlevel emit.

* Swap to object literal.

* Lints and formatting.
2022-08-21 17:48:45 -07:00
Daniel Rosenwasser 7bafbeae90 Add fourslash function for validating syntactic classification (#50362) 2022-08-18 11:28:08 -07:00
Daniel Rosenwasser 6aa9b87f54 Bump version to 4.9. (#50239) 2022-08-09 13:33:52 -07:00
Daniel Rosenwasser 0414deeaaf Merge pull request #48954 from a-tarasyuk/fix/48948
fix(48948): constructor can't be the name of class accessors and generators
2022-05-13 12:20:45 -07:00
Daniel Rosenwasser 7a3c31f9f9 Accepted es2020Intl baseline. 2022-05-11 00:07:29 +00:00
Daniel Rosenwasser 3e24f14871 Merge pull request #49029 from DavidSouther/fix/44466-contextual-keyword-assertion
fix(44466): Fixes parsing contextual keyword casts as arrow functions
2022-05-10 16:37:49 -07:00
Daniel Rosenwasser 94391dc9b5 Bump version to 4.8. 2022-05-07 00:22:34 +00:00
Daniel Rosenwasser eb1a8b14cc Remove some unused baselines. (#48964) 2022-05-05 10:33:52 -07:00
Daniel Rosenwasser 5f9c9a6ccf Start Node ESM stable version at Node16 (#48879)
* Remove Node12, add Node16.

* Accepted baselines.

* Refactor checking for top-level await, give a better error message in CJS files.

* Accepted baselines.

* Stop erroring on JSON module imports in node ESM since they're no longer experimental.

* Accepted baselines.

* More refactoring, do the same checks for for-await loops.

* Accepted baselines.

* Adjust phrasing to permit for-await on CJS error.

* Accepted baselines.

* Accepted baselines.

* Fix lints.
2022-05-03 16:29:40 -07:00
Daniel Rosenwasser 3b8b2078a3 Temporarily revert unconstrained type parameter strictness in TS 4.7 (#48923)
* Revert a change around allowing unconstrained type parameters to '{}'.

* Accepted baselines.
2022-05-02 15:49:16 -07:00
Daniel Rosenwasser 18b08fc7c9 Use same error for iteration in <=ES5 (#48881)
* Use the same error for iterating over an Iterable in ES5 or lower.

* Accepted baselines.
2022-04-29 10:45:20 -07:00
Daniel Rosenwasser c99afde6ad Run API tests with 'strict' and 'exactOptionalProperties'. (#48574) 2022-04-05 13:35:21 -07:00
Daniel Rosenwasser 67d376c882 Update version to 4.7 and update baselines. (#47856) 2022-02-11 16:18:55 -08:00
Daniel Rosenwasser 04d77fe900 Update to TypeScript 4.5.5, fix semantic lints. (#47529)
* Update to TypeScript 4.5.5, fix semantic lints.

* Remove extra parens.

* Remove now-outdated non-null comment around #18217.
2022-01-20 11:33:30 -08:00
Daniel Rosenwasser ad5ca673e6 Avoid crash for import code fixes with dotted require (#47433)
* Add failing test.

* Update failing test.

* Finalized failing test case.

* Separate our usages of utilities that expect variables initialized to require(...) and require(...).foo.

* Renamed types and utilities, removed accidental indentation.

* Renamed both utilitiy functions uniformly.
2022-01-19 15:05:01 -08:00
Daniel Rosenwasser 461fb65623 Fix for crash for auto import completions with a rooted rootDirs entry (#47411)
* Add failing test case.

* Guard against undefined relative path.
2022-01-12 13:45:06 -08:00
Daniel Rosenwasser 14f33d5c4b Fix for crash in navbar with double ambient modules (#47395)
* Add failing test.

* Guard against undefined module bodies in navbar/navtree.
2022-01-11 18:14:22 -08:00
Daniel Rosenwasser ed014db864 Add names for refactoring functions. (#47375)
* Add names for refactoring functions.

* Consistency in function names.
2022-01-11 12:20:17 -08:00
Daniel Rosenwasser 6a1af7cf5f Add DanielRosenwasser to PR owners. (#47006) 2021-12-03 12:32:16 -08:00
Daniel Rosenwasser 2e706758af Add function names for code fixes. (#46728)
* Add function names for code fixes.

* Remove double space.

* Undo CRLF -> LF change.
2021-11-27 12:15:07 -08:00
Daniel Rosenwasser a90389a22d Switch deferredNodes from a Map to a Set. (#46751) 2021-11-23 17:46:33 -08:00
Daniel Rosenwasser 416571ca90 Remove unnecessary annotations/casts/aliases (#46727)
* Remove unnecessary annotation.

* Remove more unnecessary stuff.

* Remove unnecessary assertion.
2021-11-09 12:17:54 -08:00
Daniel Rosenwasser d89076381e Bump version to 4.6 and accept baselines. (#46612) 2021-11-01 11:45:22 -07:00
Daniel Rosenwasser 6d33d8797b Check for type parameters on original type when getting type argument completions (#46614)
* Add failing test.

* Check for type parameters on the original type when asking for the type argument constraint.

* Update tests/cases/fourslash/stringLiteralTypeCompletionsInTypeArgForNonGeneric1.ts
2021-11-01 11:41:43 -07:00
Daniel Rosenwasser f494742ce9 Check for array types when instantiating mapped type constraints with any (#46218)
* Added/updated tests.

* Accepted baselines.

* Update test.

* Update instantiateMappedType to work specially when 'any' replaced an array.

* Accepted baselines.

* Ensure check works when constraint is a union of arrayish types, just like in `Promise.all`.

* Accepted baselines.

* Update test for indirect instantiation of a mapped type.

* Accepted baselines.

* Update test comment.

* Accepted baselines.

* Added tuple test case.

* Accepted baselines.

* Don't add special behavior for tuples.

* Accepted baselines.

* Revert "Don't add special behavior for tuples."

This reverts commit f01ae16e65.

* Accepted baselines.
2021-10-27 15:03:01 -07:00
Daniel Rosenwasser 334b8eaa57 Bind assignments to 'this' within static blocks in JS files (#46472)
* Add failing test case.

* Handle 'this' assignments on class static blocks in JavaScript.

* Accepted baselines.
2021-10-22 15:44:35 -07:00
Daniel Rosenwasser 7117f03ed6 Update CONTRIBUTING.md (#45552) 2021-08-24 08:15:15 +01:00
Daniel Rosenwasser 59b8bef3e7 Only provide hints for simple literals when 'literals' is specified. (#45557)
* Only provide hints for simple literals when 'literals' is specified.

* Update fourslash tests.
2021-08-23 16:38:26 -07:00
Daniel RosenwasserandTypeScript Bot af54990055 Some cleanup around inlay hints types to get more-precise checking. (#45391)
* Some cleanup around inlay hints types to get more-precise checking.

* Update Baselines and/or Applied Lint Fixes

Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2021-08-23 16:15:54 -07:00
Daniel Rosenwasser 66980fc8dc Bump version to 4.5. 2021-08-06 23:28:17 +00:00
Daniel RosenwasserandTypeScript Bot 975aabe788 Ensure all SortText entries have the same length (#45292)
* Ensure all `SortText` entries have the same length.

* Update Baselines and/or Applied Lint Fixes

* Update the exact same enum to the exact same values in fourslash. 🙄

* Make `SortTextId` a const enum, switch to use an explicit offset in `SortTextId`.

Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2021-08-02 16:27:01 -07:00
Daniel Rosenwasser 0996bff509 Support syntactic diagnostics in partial mode (#44859)
* Initial work to support syntactic diagnostics in partial mode.

* Test out 'syntacticDiagnosticsSync' requests.

* Added a 'geterr' test.

* Accepted baselines.

* Remove/clean up comments.
2021-07-13 11:22:34 -07:00
Daniel Rosenwasser 248b2c3fc1 Further optional delete corrections (#44862)
* Add more tests.

* Accepted baselines.

* Switch to testing the symbol's flags.

* Accepted baselines.
2021-07-01 18:44:22 -07:00
Daniel Rosenwasser e3d6189e3a Correctly check for 'delete' on optional properties in 'exactOptionalPropertyTypes'. (#44854)
* Check for optionality in 'delete'.

* Accepted baselines.
2021-07-01 15:19:11 -07:00
Daniel Rosenwasser 9d443b76aa Update LKG to enable improved narrowing in 4.4. (#44842)
* Update LKG.

* Remove unnecessary assertions.
2021-07-01 12:21:27 -07:00
Daniel Rosenwasser cec2fda9a5 Update LKG. (#44423) 2021-06-03 16:35:05 -07:00
Daniel Rosenwasser 9906092db2 Add flag to change catch variables' default types to unknown (#41013)
* Add test case for 'useUnknownInCatchVariables'.

* Add new 'useUnknownInCatchVariables' flag.

* Accepted baselines.

* Add test for catch variable explicitly typed as 'any'.

* Accepted baselines.

* Move option under 'strict'.

* Accepted baselines.

* 'useUnknownInCatchVariables' is strict in command line help.
2021-06-03 13:12:56 -07:00
Daniel RosenwasserandTypeScript Bot d662d94957 Bump version to 4.4. (#44028)
* Bump version to 4.4.

* Update Baselines and/or Applied Lint Fixes

Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2021-05-10 12:42:48 -07:00
Daniel Rosenwasser a3d207a905 Improve (and actually use) "always truthy promise" error (#43023)
* Modify error message and actually use the error message.

* Accepted baselines.
2021-03-29 12:44:05 -07:00
Daniel Rosenwasser 9862b031b0 Relax requirements on index signatures to 'any' when a type also contains a string index signature to 'any' (#43065)
* Added test.

* Accepted baselines.

* Allow other index signatures to 'any' if there is a string index signature to 'any'.

* Accepted baselines.
2021-03-04 17:42:00 -08:00
Daniel Rosenwasser 1f6a8d7aee Do a shallow clone for Docker tests. (#42966)
* Do a shallow clone for docker tests.

* Remove the 'pull' step from the Docker files.
2021-03-03 22:35:48 -08:00
Daniel Rosenwasser 2a49cf7d3c Update package-lock.json. (#43028) 2021-03-01 13:46:45 -08:00
Daniel RosenwasserandTypeScript Bot df5ffc0ea1 Remove special any assignability for numeric index signatures (#41660)
* Only enable special assignability rule on string index signatures to 'any'.

* Accepted baselines.

* Added test.

* Accepted baselines.

* Renamed test files.

* Add non-erroring version of bclas'subClassThisTypeAssignable01.ts'

* Accepted baselines.

Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2021-02-25 17:36:09 -08:00
Daniel Rosenwasser c25d9e913b Fix regexes. (#42921) 2021-02-22 22:02:02 -08:00
Daniel Rosenwasser f633446969 Make 'calendar' and 'numberingSystem' open strings in es2020.intl. (#42886) 2021-02-19 12:57:56 -08:00
Daniel Rosenwasser 4d1dfab9e0 Ignore .devcontainer for npm (#42826) 2021-02-16 15:56:29 -08:00
Daniel Rosenwasser 290b0ea94d Pin Node version for Volta users. (#42746) 2021-02-10 12:56:22 -08:00
Daniel Rosenwasser 94747aa4e1 Bump version to 4.3. (#42728) 2021-02-09 17:07:28 -08:00
Daniel RosenwasserandSheetal Nandi 664ed17ebd Allow only package names as plugin names (#42713)
* Allow only package names as plugin names

* Remove extra argument following merge from master branch.

* kipped -> Skipped

Co-authored-by: Sheetal Nandi <shkamat@microsoft.com>
2021-02-09 11:30:09 -08:00
Daniel RosenwasserandTypeScript Bot cce4bfbc7c Revert changes for template literal types, keeping tests. (#42588)
* Revert changes for template literal types, keeping tests.

* Update Baselines and/or Applied Lint Fixes

Co-authored-by: TypeScript Bot <typescriptbot@microsoft.com>
2021-02-03 14:49:03 -08:00
Daniel Rosenwasser 654975481f Use spaces instead of non-breaking spaces, narrow non-breaking spaces. (#42500) 2021-02-03 14:29:42 -08:00
Daniel Rosenwasser f4157b41db Add an action to update baselines/fix lints (#39898)
* Add an action to update baselines/fix lints

* Change email
2020-11-20 16:03:58 -08:00
Daniel Rosenwasser 9871b5f17c Fix Markdown spec link (#41375) 2020-11-02 23:03:37 -08:00
Daniel Rosenwasser 4d19d98ca1 Bump 4.2 (#41377)
* Bump version to 4.2.

* Accepted baselines.
2020-11-02 23:02:03 -08:00
Daniel Rosenwasser 373b352333 Rename 'compat' to 'deprecatedCompat'. (#41000) 2020-11-02 14:25:12 -08:00
Daniel Rosenwasser 3517af8f80 Make 'getIndentString' just use a loop. (#41221)
* Make 'getIndentString' just use a loop.

* Added test.

* Accepted baselines.
2020-10-26 12:19:31 -07:00
Daniel Rosenwasser 3766be1bde Test indexed access to this on intersections (#40967)
* Added test.

* Accepted baselines.
2020-10-06 14:18:44 -07:00
Daniel Rosenwasser bbf26a07eb Remove technically unnecessary 'module' option from 'harness' config. (#40526) 2020-09-12 23:19:02 -07:00
Daniel Rosenwasser 31f4957494 Revert "Optimize source mapping into external source map sources (#40055)" (#40126)
This reverts commit 1e84ffc703.
2020-08-19 11:46:52 -07:00
Daniel Rosenwasser 97a072926f Revert "Add '(approximate)' to the beginning of quick info requests in PartialSemantic mode (#40061)" (#40072)
This reverts commit 2426eb4980.
2020-08-17 11:45:39 -07:00
Daniel Rosenwasser 2426eb4980 Add '(approximate)' to the beginning of quick info requests in PartialSemantic mode (#40061)
* Add '(approximate)' to the beginning of quick info requests.

* Use 'approximation' instead of 'approximate'.
2020-08-14 17:54:10 -07:00
Daniel Rosenwasser 2106b07f22 Rename and use the default ref instead of having a workflow_dispatch option 2020-08-04 00:14:24 -07:00
Daniel Rosenwasser 817dc52fd3 Add an 'Update LKG' action (#39897) 2020-08-04 00:05:24 -07:00
Daniel Rosenwasser d985e68ffa Bump version to 4.1. (#39894)
* Bump version to 4.1.

* Update baselines.
2020-08-03 23:38:55 -07:00
Daniel Rosenwasser b7193a6a44 Add workflow_dispatch to our nightly publish script. (#39485)
* Add workflow_dispatch to our nightly publish script.

* Update nightly.yaml
2020-07-07 16:11:14 -07:00
Daniel Rosenwasser 64696225ab Merge pull request #39418 from a-tarasyuk/feat/25259-diagnostic
feat(25259): Better error report for equals instead of colon in object literals / change diagnostic message
2020-07-06 12:13:49 -07:00
Daniel Rosenwasser 77bf2045d8 Merge pull request #39379 from a-tarasyuk/bug/39346
fix(39346): Intelligent code completion not working in child class with composited base interface
2020-07-06 11:59:30 -07:00
Daniel Rosenwasser a812a7449d Merge pull request #38792 from microsoft/reportBaseAgainstBooleans 2020-06-30 01:58:51 -07:00
Daniel Rosenwasser 1bbd5ef36b Merge pull request #38754 from a-tarasyuk/feat/25259
feat(25259): Better error report for equals instead of colon in object literals
2020-06-30 01:56:26 -07:00
Daniel Rosenwasser 619658bd44 Merge pull request #39109 from Kingwl/lambda_span
Add outlining spans for call expression or arrow body
2020-06-29 23:33:04 -07:00
Daniel Rosenwasser 57dd722ab6 Merge pull request #38776 from a-tarasyuk/bug/29890
fix(29890): JSX: "extract to constant" generates invalid code
2020-06-29 14:09:52 -07:00
Daniel Rosenwasser e6aedfd38b Merge pull request #37907 from Jack-Works/feat/class-to-classname
feat: add a codefix to fix class to className in react & add spelling suggest for JSX attributes
2020-06-22 18:32:24 -07:00
Daniel Rosenwasser 0476a1aba7 Merge pull request #39112 from microsoft/lego/hb_998_20200617161036026
LEGO: Pull request from lego/hb_998_20200617161036026 to master
2020-06-22 18:18:57 -07:00
Daniel Rosenwasser 17490efec9 Merge pull request #39136 from microsoft/lego/hb_998_20200618041040315
LEGO: Pull request from lego/hb_998_20200618041040315 to master
2020-06-22 18:18:38 -07:00