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

chore(deps): update dependency esbuild to v0.17.10 #7662

Merged
merged 1 commit into from
Feb 22, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 21, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
esbuild 0.17.8 -> 0.17.10 age adoption passing confidence

Release Notes

evanw/esbuild

v0.17.10

Compare Source

  • Update esbuild's handling of CSS nesting to match the latest specification changes (#​1945)

    The syntax for the upcoming CSS nesting feature has recently changed. The @nest prefix that was previously required in some cases is now gone, and nested rules no longer have to start with & (as long as they don't start with an identifier or function token).

    This release updates esbuild's pass-through handling of CSS nesting syntax to match the latest specification changes. So you can now use esbuild to bundle CSS containing nested rules and try them out in a browser that supports CSS nesting (which includes nightly builds of both Chrome and Safari).

    However, I'm not implementing lowering of nested CSS to non-nested CSS for older browsers yet. While the syntax has been decided, the semantics are still in flux. In particular, there is still some debate about changing the fundamental way that CSS nesting works. For example, you might think that the following CSS is equivalent to a .outer .inner button { ... } rule:

    .inner button {
      .outer & {
        color: red;
      }
    }

    But instead it's actually equivalent to a .outer :is(.inner button) { ... } rule which unintuitively also matches the following DOM structure:

    <div class="inner">
      <div class="outer">
        <button></button>
      </div>
    </div>

    The :is() behavior is preferred by browser implementers because it's more memory-efficient, but the straightforward translation into a .outer .inner button { ... } rule is preferred by developers used to the existing CSS preprocessing ecosystem (e.g. SASS). It seems premature to commit esbuild to specific semantics for this syntax at this time given the ongoing debate.

  • Fix cross-file CSS rule deduplication involving url() tokens (#​2936)

    Previously cross-file CSS rule deduplication didn't handle url() tokens correctly. These tokens contain references to import paths which may be internal (i.e. in the bundle) or external (i.e. not in the bundle). When comparing two url() tokens for equality, the underlying import paths should be compared instead of their references. This release of esbuild fixes url() token comparisons. One side effect is that @font-face rules should now be deduplicated correctly across files:

    /* Original code */
    @&#8203;import "data:text/css, \
      @&#8203;import 'http://example.com/style.css'; \
      @&#8203;font-face { src: url(http://example.com/font.ttf) }";
    @&#8203;import "data:text/css, \
      @&#8203;font-face { src: url(http://example.com/font.ttf) }";
    
    /* Old output (with --bundle --minify) */
    @&#8203;import"http://example.com/style.css";@&#8203;font-face{src:url(http://example.com/font.ttf)}@&#8203;font-face{src:url(http://example.com/font.ttf)}
    
    /* New output (with --bundle --minify) */
    @&#8203;import"http://example.com/style.css";@&#8203;font-face{src:url(http://example.com/font.ttf)}

v0.17.9

Compare Source

  • Parse rest bindings in TypeScript types (#​2937)

    Previously esbuild was unable to parse the following valid TypeScript code:

    let tuple: (...[e1, e2, ...es]: any) => any

    This release includes support for parsing code like this.

  • Fix TypeScript code translation for certain computed declare class fields (#​2914)

    In TypeScript, the key of a computed declare class field should only be preserved if there are no decorators for that field. Previously esbuild always preserved the key, but esbuild will now remove the key to match the output of the TypeScript compiler:

    // Original code
    declare function dec(a: any, b: any): any
    declare const removeMe: unique symbol
    declare const keepMe: unique symbol
    class X {
        declare [removeMe]: any
        @&#8203;dec declare [keepMe]: any
    }
    
    // Old output
    var _a;
    class X {
    }
    removeMe, _a = keepMe;
    __decorateClass([
      dec
    ], X.prototype, _a, 2);
    
    // New output
    var _a;
    class X {
    }
    _a = keepMe;
    __decorateClass([
      dec
    ], X.prototype, _a, 2);
  • Fix a crash with path resolution error generation (#​2913)

    In certain situations, a module containing an invalid import path could previously cause esbuild to crash when it attempts to generate a more helpful error message. This crash has been fixed.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot added the release:chore This PR is a chore (means nothing for users) label Feb 21, 2023
@renovate renovate bot merged commit d3d4f2b into main Feb 22, 2023
@renovate renovate bot deleted the renovate/esbuild-0.x branch February 22, 2023 01:58
@redwoodjs-bot redwoodjs-bot bot added this to the next-release milestone Feb 22, 2023
jtoar pushed a commit that referenced this pull request Feb 22, 2023
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@jtoar jtoar modified the milestones: next-release, v4.2.0 Feb 22, 2023
dac09 added a commit to dac09/redwood that referenced this pull request Feb 28, 2023
* 'main' of github.com:redwoodjs/redwood: (21 commits)
  chore(deps): update dependency @types/uuid to v9.0.1 (redwoodjs#7680)
  chore(deps): update dependency @replayio/playwright to v0.3.23 (redwoodjs#7677)
  chore(deps): update dependency @npmcli/arborist to v6.2.3 (redwoodjs#7675)
  chore(deps): update dependency @envelop/types to v3.0.2 (redwoodjs#7674)
  chore: add codemod for clerk fix in v4.2.0 (redwoodjs#7676)
  chore(deps): update dependency @clerk/types to v3.28.1 (redwoodjs#7652)
  chore(deps): update dependency @envelop/testing to v5.0.6 (redwoodjs#7673)
  Update directives.md (redwoodjs#7670)
  fix(deps): update dependency vscode-languageserver-types to v3.17.3 (redwoodjs#7636)
  Fix `yarn rw exec` to set nonzero exit code on error (redwoodjs#7660)
  fix(deps): update dependency core-js to v3.28.0 (redwoodjs#7666)
  fix(deps): update dependency @clerk/clerk-sdk-node to v4.7.4 (redwoodjs#7663)
  fix(deps): update dependency vite to v4.1.3 (redwoodjs#7664)
  fix(deps): update dependency @fastify/url-data to v5.3.1 (redwoodjs#7665)
  fix(deps): update dependency yargs to v17.7.1 (redwoodjs#7667)
  fix(clerk): Remove privateMetadata property from getCurrentUser (redwoodjs#7668)
  chore(deps): update dependency esbuild to v0.17.10 (redwoodjs#7662)
  chore(deps): bump setup of Chakra UI to V2 (redwoodjs#7649)
  Forms: Export EmptyAsValue (redwoodjs#7656)
  Update useRequireAuth docs to v4 auth (redwoodjs#7646)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release:chore This PR is a chore (means nothing for users)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant