5795 Commits

Author SHA1 Message Date
Sosuke Suzuki
87fc2e76d7
Add assertions to ExportNamedDeclaration without from (#13957) 2021-11-16 11:53:28 +01:00
Francisco Ryan Tolmasky I
966387d263
Always expose expressionValue in DirectiveLiteral nodes (#13960)
* fix(babel-parser): Move storage of expressionValue in DirectiveLiteral to main parser so it is accessible to others.

Closes #13953.

Reviewed by @tolmasky.

* Add results from running `OVERWRITE=true yarn jest babel-parser`.

Reviewed by @tolmasky.
2021-11-13 20:46:16 -05:00
M Behzad
d3fffd95b6
Add file extension when using absoluteRuntime (#12827)
* fix: add file extention when the absolute path to the runtime files are used (#12824)
the es module imports need the file extention (e.g. import "@babel/runtime/helpers/jsx.js", Or the filenames being listed in the package.json's subpath exports (e.g. "import "@babel/runtime/helpers/jsx" + pkg: "./helpers/jsx": "./helpers/jsx.js"). when the user passes a path via `absoluteRuntime` then the rendered require staemnts is not the module name + subpath which will be resolved via pkg.json but rather the absolute path to the file. for this case, add the file extention / index.js to prevent bundlers from raising a warning.

* Update deps

* Fix imports resolution

* Update fixtures (Windows)

Co-authored-by: Nicolò Ribaudo <nicolo.ribaudo@gmail.com>
Co-authored-by: Babel Bot <babel-bot@users.noreply.github.com>
2021-11-14 02:03:30 +01:00
Nicolò Ribaudo
d16f8111ea
Wait the correct number of ticks on nested await (#13961) 2021-11-14 02:02:35 +01:00
Huáng Jùnliàng
54c539ecc1
Refactor bindingProperty parsing (#13929)
* refactor: inline parseMaybePrivateName

* correct test case

* perf: fast exit in checkExpressionErrors

* refactor: add parseBindingProperty

* fix: private property with variance

* Update packages/babel-parser/src/parser/expression.js

Co-authored-by: Nicolò Ribaudo <nicolo.ribaudo@gmail.com>

* chore: update testcase

* refactor: remove refExpressionErrors for record/tuple

They are always non-ambiguous.

Co-authored-by: Nicolò Ribaudo <nicolo.ribaudo@gmail.com>
2021-11-12 10:11:46 -05:00
Sneh Khatri
135ab837bc
Throw on duplicate __proto__ props followed by assignment (#13951) 2021-11-12 14:45:56 +01:00
Huáng Jùnliàng
f731522125
chore: update compat-data (#13949)
* chore: update compat-data

* update compat-data sources

* fix: exclude deno from compat-data

* update test fixtures

* update Babel 8 test fixtures
2021-11-10 15:39:34 -05:00
Babel Bot
3b6f061e18 v7.16.3 2021-11-09 21:44:15 +00:00
Mickey Rose
74bec41db5
fix(helpers): match Reflect.get behaviour (#13862) 2021-11-09 17:39:41 +01:00
Nicolò Ribaudo
43f989941b
Support transforming params of arrow functions in class fields (#13941) 2021-11-09 12:12:23 +01:00
Sneh Khatri
a6a526968d
fix: incorrect await rejection following arrow function in parameters (fixes #13872) (#13928)
* fix: incorrect await rejection following arrow func in params

* expressionScope.exit() shifted to end

* test added for yield
2021-11-05 15:41:31 -04:00
Huáng Jùnliàng
7250d2562b
Simplifiy tracking of valid JSX positions (#13891)
Remove `state.inPropertyName` and simplifies `state.canStartJSXElement` tracking
2021-11-04 17:12:42 +01:00
Nicolò Ribaudo
76e4566bfc
Update browserslist (#13914) 2021-11-02 07:20:58 +01:00
Huáng Jùnliàng
1fa759f989
refactor: extract tt.lt and tt.gt from tt.relation (#13892) 2021-11-01 21:15:42 -04:00
Babel Bot
68fad796b1 v7.16.2 2021-11-01 21:47:31 +00:00
Huáng Jùnliàng
833b39112d
fix: early return when param binding is not found (#13910) 2021-11-01 15:11:30 -04:00
Sosuke Suzuki
cba7f9e503
Add missing assertions type (#13905) 2021-11-01 08:43:39 -04:00
Babel Bot
67eb2c805e v7.16.1 2021-10-30 21:21:37 +00:00
Peach
c20506e594
Fix binding access for plugin-transform-typescript (#13900) 2021-10-30 19:54:42 +02:00
Nicolò Ribaudo
45308f3cba v7.16.0 2021-10-30 01:26:04 +02:00
Nicolò Ribaudo
e33186c68e Pre-release updates
Update the release tool to 0c289ca7ee
2021-10-30 01:25:25 +02:00
Nicolò Ribaudo
0c820a456d
Update core-js and polyfill plugins (#13897) 2021-10-30 01:09:58 +02:00
Sosuke Suzuki
d5ba355867
Support TypeScript 4.5 type-only import/export specifiers (#13802) 2021-10-29 01:23:23 +02:00
Huáng Jùnliàng
872086a9a0
feat: support startColumn option (#13887) 2021-10-29 01:20:32 +02:00
Nicolò Ribaudo
718c6cb7de
Handle .mts and .cts files in @babel/preset-typescript (#13838) 2021-10-29 01:13:37 +02:00
J. S. Choi
ad59a2c618
Caret topic (pipe operator) (#13749)
* parser: Add caret as topic reference (tests)

* parser: Add caret as topic reference (implement)

* generator: Avoid reconstructing validTopicTokenSet

* babel-parser: Remove redundant throws in expression.js

* Minimize diff

* Update error message

Co-authored-by: Nicolò Ribaudo <nicolo.ribaudo@gmail.com>
2021-10-28 16:04:55 -04:00
Sosuke Suzuki
ddc45a5a50
Enable class static blocks by default (#13713)
* Remove classStaticBlock plugin

* Update tests

* Remove class static blocks from proposalPlugins

* Update tests

* Remove classStaticBlock from mapping for test262

* chore: update babel-types

Co-authored-by: Huáng Jùnliàng <jlhwung@gmail.com>
2021-10-28 14:39:04 -04:00
Mickey Rose
99a3fefede
add skipTransparentExprWrapperNodes helper (#13687)
* overload `skipTransparentExprWrappers`

* fixes isSimpleMemberExpression
  in @babel/plugin-proposal-optional-chaining

* use skipTransparentExprWrappers<Expression> instead of the NodePath
  overload where possible in @babel/plugin-proposal-optional-chaining

* Revert "overload `skipTransparentExprWrappers`"

This reverts commit fad47596a64a8d33aadacb7695dbf1aa60a528ae.

* add helper `skipTransparentExprWrapperNodes`

* avoids constructing NodePaths when only the Node is needed

* fixes isSimpleMemberExpression
  in @babel/plugin-proposal-optional-chaining

* use this new helper instead of skipTransparentExprWrappers
  where possible in @babel/plugin-proposal-optional-chaining
2021-10-28 14:16:22 -04:00
Justin Ridgewell
b1793656e6
Add aliases for Standardized, TypeScript, and Flow (#13666)
* Ensure non-standard types have an appropriate alias

This helps with filter out the types. Eg, I'm concerned with just the core JS types, and in I can derive them via:

```typescript
type Core = Exclude<t.Node, t.TypeScript | t.Flow>;
```

* Lint

* Export deprecated alias types

* Add docs descriptions for new aliases

* Add Standardized alias

* Fix inherits aliases

* Filter aliases from node types

* Remove Proposal alias
2021-10-28 14:14:32 -04:00
Nicolò Ribaudo
fb7ddf4d38
[ts] Support private methods overloads (#13876)
* [parser] Allow private methods overloads when parsing TS

* Add transform tests

* Fix estree

* Fix flow
2021-10-26 07:29:20 +02:00
Nicolò Ribaudo
c7ddb1ae93
Use workspace:^ to specify @babel/ dependencies (#13772)
* Enforce `workspace:^` to specify `@babel/` dependencies

* `yarn constraints --fix`

* Update lockfile
2021-10-25 07:22:08 +02:00
Nicolò Ribaudo
62b2c5ebb9
Regenerate parser fixtures (#13882) 2021-10-24 18:12:10 +02:00
Huáng Jùnliàng
e45d86c333
[babel 8] Enable preset-env bugfixes by default (#13866) 2021-10-24 15:17:19 +02:00
Mickey Rose
b5907ef967
remove executable permission from files that shouldn't have it (#13873) 2021-10-23 14:18:30 +02:00
Mickey Rose
cfe6739dc0
fix: allow enum member without initializer after non-literal member (#13865) 2021-10-22 08:52:23 -04:00
Mickey Rose
35ec4394a7
Simplify (transpiled) babel-types builder wrappers (#13843) 2021-10-21 18:55:42 +02:00
Emily Marigold Klassen
fca5c9a501
Don't transform declare class in proposal-class-properties (#13854)
Co-authored-by: Nicolò Ribaudo <nicolo.ribaudo@gmail.com>
2021-10-21 00:30:05 +02:00
Huáng Jùnliàng
29f697c84e
Implement @babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression (#13842)
* fix: register function expression id after params

* implement bugfix plugin

* add more testcases

* fix: do not skip pattern binding referencing id

* update compat-table

* add bugfix plugin to preset-env

* update Babel 8 test fixtures

* Update packages/babel-plugin-bugfix-safari-id-destructuring-collision-in-function-expression/README.md

* chore: bundle bugfix plugin

* address review comments

* add runtime version check

* update compat table

* fix syntax error

* update test fixtures

* revert bugfixes targets update

* update Babel 8 test fixtures
2021-10-20 15:53:40 -04:00
Nicolò Ribaudo
780aa48d2a
Force loading plugins/presets from the monorepo in tests (#13858) 2021-10-18 14:03:50 +02:00
Mickey Rose
24aa1b44fe
[ts] precise return type on createTypeAnnotationBasedOnTypeof (#13844) 2021-10-14 09:00:19 +02:00
Mickey Rose
2403a4889d
remove ineffectual helper names filter (#13841) 2021-10-12 10:30:28 -04:00
Nicolò Ribaudo
2df453d2da
Update failing fixture (#13840) 2021-10-11 15:55:40 -05:00
Huáng Jùnliàng
21eeb8e7a9
Restore traversal context after enter / traverse (#13813) 2021-10-11 19:04:01 +02:00
Nicolò Ribaudo
6880898510
[babel 8] Remove make-dir polyfill for fs.mkdirSync (#13828)
* [babel 8] Remove `make-dir` polyfill for `fs.makeDitSync`

* `yarn`

* fix

* Inject polyfills in jest tests when needed
2021-10-11 07:01:30 +02:00
Huáng Jùnliàng
49a0d65be1
Mark static block as FunctionParent (#13832)
* refactor: move StaticBlock definition to core

* update generated types

* fix: mark StaticBlock as FunctionParent

* revise testcase

* update babel-types docs
2021-10-10 20:22:27 -04:00
Mickey Rose
00f8ee3484
ignore non-js files in babel-helpers/src/helpers (#13833)
* ignore non-js files in `babel-helpers/src/helpers`

* fix misnamed `generateAsserts` -> `generateHelpers`
2021-10-11 00:21:55 +02:00
Nicolò Ribaudo
65e963e5de
Regenerate helpers-generated.ts (#13831) 2021-10-08 22:02:07 +02:00
Nicolò Ribaudo
b9ea196259
Await promises from sync iterators with for-await (#13824)
Co-authored-by: Mickey Rose <lightmare@users.noreply.github.com>
2021-10-07 23:57:25 +02:00
overlookmotel
6029252bec
Fix missing inner comments in function expressions (#13825) 2021-10-07 23:34:12 +02:00
Huáng Jùnliàng
c2f747c9b9
Improve transform-react-jsx typings (#13820)
* improve transform-react-jsx typings

* rename test fixtures

* remove unreachable sourceSelf check

* update test fixtures

* Update packages/babel-core/src/index.ts

* Update packages/babel-plugin-transform-react-jsx/src/create-plugin.ts

Co-authored-by: Henry Zhu <hi@henryzoo.com>

* Update packages/babel-plugin-transform-react-jsx/src/create-plugin.ts

Co-authored-by: Henry Zhu <hi@henryzoo.com>
2021-10-07 14:01:50 -04:00