Skip to content

build(deps-dev): bump esbuild from 0.14.29 to 0.14.34 #734

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

Merged
merged 1 commit into from
Apr 7, 2022

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Apr 7, 2022

Bumps esbuild from 0.14.29 to 0.14.34.

Release notes

Sourced from esbuild's releases.

v0.14.34

Something went wrong with the publishing script for the previous release. Publishing again.

v0.14.33

  • Fix a regression regarding super (#2158)

    This fixes a regression from the previous release regarding classes with a super class, a private member, and a static field in the scenario where the static field needs to be lowered but where private members are supported by the configured target environment. In this scenario, esbuild could incorrectly inject the instance field initializers that use this into the constructor before the call to super(), which is invalid. This problem has now been fixed (notice that this is now used after super() instead of before):

    // Original code
    class Foo extends Object {
      static FOO;
      constructor() {
        super();
      }
      #foo;
    }
    // Old output (with --bundle)
    var _foo;
    var Foo = class extends Object {
    constructor() {
    __privateAdd(this, _foo, void 0);
    super();
    }
    };
    _foo = new WeakMap();
    __publicField(Foo, "FOO");
    // New output (with --bundle)
    var _foo;
    var Foo = class extends Object {
    constructor() {
    super();
    __privateAdd(this, _foo, void 0);
    }
    };
    _foo = new WeakMap();
    __publicField(Foo, "FOO");

    During parsing, esbuild scans the class and makes certain decisions about the class such as whether to lower all static fields, whether to lower each private member, or whether calls to super() need to be tracked and adjusted. Previously esbuild made two passes through the class members to compute this information. However, with the new super() call lowering logic added in the previous release, we now need three passes to capture the whole dependency chain for this case: 1) lowering static fields requires 2) lowering private members which requires 3) adjusting super() calls.

    The reason lowering static fields requires lowering private members is because lowering static fields moves their initializers outside of the class body, where they can't access private members anymore. Consider this code:

    class Foo {
      get #foo() {}
      static bar = new Foo().#foo
    }

... (truncated)

Changelog

Sourced from esbuild's changelog.

0.14.34

Something went wrong with the publishing script for the previous release. Publishing again.

0.14.33

  • Fix a regression regarding super (#2158)

    This fixes a regression from the previous release regarding classes with a super class, a private member, and a static field in the scenario where the static field needs to be lowered but where private members are supported by the configured target environment. In this scenario, esbuild could incorrectly inject the instance field initializers that use this into the constructor before the call to super(), which is invalid. This problem has now been fixed (notice that this is now used after super() instead of before):

    // Original code
    class Foo extends Object {
      static FOO;
      constructor() {
        super();
      }
      #foo;
    }
    // Old output (with --bundle)
    var _foo;
    var Foo = class extends Object {
    constructor() {
    __privateAdd(this, _foo, void 0);
    super();
    }
    };
    _foo = new WeakMap();
    __publicField(Foo, "FOO");
    // New output (with --bundle)
    var _foo;
    var Foo = class extends Object {
    constructor() {
    super();
    __privateAdd(this, _foo, void 0);
    }
    };
    _foo = new WeakMap();
    __publicField(Foo, "FOO");

    During parsing, esbuild scans the class and makes certain decisions about the class such as whether to lower all static fields, whether to lower each private member, or whether calls to super() need to be tracked and adjusted. Previously esbuild made two passes through the class members to compute this information. However, with the new super() call lowering logic added in the previous release, we now need three passes to capture the whole dependency chain for this case: 1) lowering static fields requires 2) lowering private members which requires 3) adjusting super() calls.

    The reason lowering static fields requires lowering private members is because lowering static fields moves their initializers outside of the class body, where they can't access private members anymore. Consider this code:

    class Foo {
      get #foo() {}

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot bot added dependencies Changes that touch dependencies, e.g. Dependabot, etc. javascript labels Apr 7, 2022
@dreamorosi
Copy link
Contributor

@dependabot rebase

Bumps [esbuild](https://github.com/evanw/esbuild) from 0.14.29 to 0.14.34.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/master/CHANGELOG.md)
- [Commits](evanw/esbuild@v0.14.29...v0.14.34)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/npm_and_yarn/esbuild-0.14.34 branch from 0ee0357 to f5d7a72 Compare April 7, 2022 16:03
@dreamorosi dreamorosi merged commit 27c6953 into main Apr 7, 2022
@dreamorosi dreamorosi deleted the dependabot/npm_and_yarn/esbuild-0.14.34 branch April 7, 2022 16:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Changes that touch dependencies, e.g. Dependabot, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant