chore(deps): update dependency esbuild to v0.14.30 #1758
No reviewers
Labels
No Label
area/internal-code
changes requested
confirmed
dependencies
duplicate
good first issue
help wanted
hosting
invalid
kind/bug
kind/feature
question
wontfix
No Milestone
No project
No Assignees
2 Participants
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: vikunja/frontend#1758
Loading…
Reference in New Issue
No description provided.
Delete Branch "renovate/esbuild-0.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
0.14.29
->0.14.30
Release Notes
evanw/esbuild
v0.14.30
Compare Source
Change the context of TypeScript parameter decorators (#2147)
While TypeScript parameter decorators are expressions, they are not evaluated where they exist in the code. They are moved to after the class declaration and evaluated there instead. Specifically this TypeScript code:
becomes this JavaScript code:
This has several consequences:
Whether
await
is allowed inside a decorator expression or not depends on whether the class declaration itself is in anasync
context or not. With this release, you can now useawait
inside a decorator expression when the class declaration is either inside anasync
function or is at the top-level of an ES module and top-level await is supported. Note that the TypeScript compiler currently has a bug regarding this edge case: https://github.com/microsoft/TypeScript/issues/48509.Also while TypeScript currently allows
await
to be used like this inasync
functions, it doesn't currently allowyield
to be used like this in generator functions. It's not yet clear whether this behavior withyield
is a bug or by design, so I haven't made any changes to esbuild's handling ofyield
inside decorator expressions in this release.Since the scope of a decorator expression is the scope enclosing the class declaration, they cannot access private identifiers. Previously this was incorrectly allowed but with this release, esbuild no longer allows this. Note that the TypeScript compiler currently has a bug regarding this edge case: https://github.com/microsoft/TypeScript/issues/48515.
Since the scope of a decorator expression is the scope enclosing the class declaration, identifiers inside parameter decorator expressions should never be resolved to a parameter of the enclosing method. Previously this could happen, which was a bug with esbuild. This bug no longer happens in this release.
Specifically previous versions of esbuild generated the following incorrect JavaScript (notice the use of
arg2
):This release now generates the following correct JavaScript (notice the use of
arg
):Fix some obscure edge cases with
super
property accessThis release fixes the following obscure problems with
super
when targeting an older JavaScript environment such as--target=es6
:The compiler could previously crash when a lowered
async
arrow function contained a class with a field initializer that used asuper
property access:The compiler could previously generate incorrect code when a lowered
async
method of a derived class contained a nested class with a computed class member involving asuper
property access on the derived class:The compiler could previously generate incorrect code when a default-exported class contained a
super
property access inside a lowered static private class field:Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.
Hi renovate!
Thank you for creating a PR!
I've deployed the changes of this PR on a preview environment under this URL: https://1758-renovate-esbuild-0-x--vikunja-frontend-preview.netlify.app
You can use this url to view the changes live and test them out.
You will need to manually connect this to an api running somehwere. The easiest to use is https://try.vikunja.io/.
Have a nice day!