dependabot[bot] opened a new pull request, #39407:
URL: https://github.com/apache/arrow/pull/39407

   Bumps [esbuild](https://github.com/evanw/esbuild) from 0.19.2 to 0.19.11.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/evanw/esbuild/releases";>esbuild's 
releases</a>.</em></p>
   <blockquote>
   <h2>v0.19.11</h2>
   <ul>
   <li>
   <p>Fix TypeScript-specific class transform edge case (<a 
href="https://redirect.github.com/evanw/esbuild/issues/3559";>#3559</a>)</p>
   <p>The previous release introduced an optimization that avoided transforming 
<code>super()</code> in the class constructor for TypeScript code compiled with 
<code>useDefineForClassFields</code> set to <code>false</code> if all class 
instance fields have no initializers. The rationale was that in this case, all 
class instance fields are omitted in the output so no changes to the 
constructor are needed. However, if all of this is the case <em>and</em> there 
are <code>#private</code> instance fields with initializers, those private 
instance field initializers were still being moved into the constructor. This 
was problematic because they were being inserted before the call to 
<code>super()</code> (since <code>super()</code> is now no longer transformed 
in that case). This release introduces an additional optimization that avoids 
moving the private instance field initializers into the constructor in this 
edge case, which generates smaller code, matches the TypeScript compiler's 
output 
 more closely, and avoids this bug:</p>
   <pre lang="ts"><code>// Original code
   class Foo extends Bar {
     #private = 1;
     public: any;
     constructor() {
       super();
     }
   }
   <p>// Old output (with esbuild v0.19.9)
   class Foo extends Bar {
   constructor() {
   super();
   this.#private = 1;
   }
   #private;
   }</p>
   <p>// Old output (with esbuild v0.19.10)
   class Foo extends Bar {
   constructor() {
   this.#private = 1;
   super();
   }
   #private;
   }</p>
   <p>// New output
   class Foo extends Bar {
   #private = 1;
   constructor() {
   super();
   }
   }
   </code></pre></p>
   </li>
   <li>
   <p>Minifier: allow reording a primitive past a side-effect (<a 
href="https://redirect.github.com/evanw/esbuild/issues/3568";>#3568</a>)</p>
   <p>The minifier previously allowed reordering a side-effect past a 
primitive, but didn't handle the case of reordering a primitive past a 
side-effect. This additional case is now handled:</p>
   <pre lang="js"><code>// Original code
   function f() {
     let x = false;
   </code></pre>
   </li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Changelog</summary>
   <p><em>Sourced from <a 
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md";>esbuild's 
changelog</a>.</em></p>
   <blockquote>
   <h2>0.19.11</h2>
   <ul>
   <li>
   <p>Fix TypeScript-specific class transform edge case (<a 
href="https://redirect.github.com/evanw/esbuild/issues/3559";>#3559</a>)</p>
   <p>The previous release introduced an optimization that avoided transforming 
<code>super()</code> in the class constructor for TypeScript code compiled with 
<code>useDefineForClassFields</code> set to <code>false</code> if all class 
instance fields have no initializers. The rationale was that in this case, all 
class instance fields are omitted in the output so no changes to the 
constructor are needed. However, if all of this is the case <em>and</em> there 
are <code>#private</code> instance fields with initializers, those private 
instance field initializers were still being moved into the constructor. This 
was problematic because they were being inserted before the call to 
<code>super()</code> (since <code>super()</code> is now no longer transformed 
in that case). This release introduces an additional optimization that avoids 
moving the private instance field initializers into the constructor in this 
edge case, which generates smaller code, matches the TypeScript compiler's 
output 
 more closely, and avoids this bug:</p>
   <pre lang="ts"><code>// Original code
   class Foo extends Bar {
     #private = 1;
     public: any;
     constructor() {
       super();
     }
   }
   <p>// Old output (with esbuild v0.19.9)
   class Foo extends Bar {
   constructor() {
   super();
   this.#private = 1;
   }
   #private;
   }</p>
   <p>// Old output (with esbuild v0.19.10)
   class Foo extends Bar {
   constructor() {
   this.#private = 1;
   super();
   }
   #private;
   }</p>
   <p>// New output
   class Foo extends Bar {
   #private = 1;
   constructor() {
   super();
   }
   }
   </code></pre></p>
   </li>
   <li>
   <p>Minifier: allow reording a primitive past a side-effect (<a 
href="https://redirect.github.com/evanw/esbuild/issues/3568";>#3568</a>)</p>
   <p>The minifier previously allowed reordering a side-effect past a 
primitive, but didn't handle the case of reordering a primitive past a 
side-effect. This additional case is now handled:</p>
   <pre lang="js"><code>// Original code
   function f() {
   </code></pre>
   </li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/evanw/esbuild/commit/6ee82255bdfdffef2de60827e9d35a425a7cbff6";><code>6ee8225</code></a>
 publish 0.19.11 to npm</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/f8ae3af32f698e0be5c159a4ab5d77324d3f44d7";><code>f8ae3af</code></a>
 fix <a href="https://redirect.github.com/evanw/esbuild/issues/3561";>#3561</a>: 
treeshaking of known <code>Symbol</code> instances</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/0811058e16e1416547ba9abbaf182916eaf259f5";><code>0811058</code></a>
 switch define data to flags</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/f5f8ff895c4665b661ac6a49940e7bb7f012603b";><code>f5f8ff8</code></a>
 fix <a href="https://redirect.github.com/evanw/esbuild/issues/3568";>#3568</a>: 
can reorder primitive past side-effect</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/914f6080c77cfe32a54888caa51ca6ea13873ce9";><code>914f608</code></a>
 fix <a href="https://redirect.github.com/evanw/esbuild/issues/3558";>#3558</a>: 
put the <code>stop()</code> api call back</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/2aa166b623a0db059409e7ccf02ebc084fcb3abd";><code>2aa166b</code></a>
 fix <a href="https://redirect.github.com/evanw/esbuild/issues/3559";>#3559</a>: 
fix recent class transform regression</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/55e1127a49db0c26f1abd97f1b180bbc728aa95a";><code>55e1127</code></a>
 publish 0.19.10 to npm</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/d968af29c3e11b0de0776c0648548d8e298afc02";><code>d968af2</code></a>
 fix <a href="https://redirect.github.com/evanw/esbuild/issues/3511";>#3511</a>: 
<code>@__NO_SIDE_EFFECTS__</code> with templates</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/00c4ebeb91a576dcf710b36ca8927a99efff1d37";><code>00c4ebe</code></a>
 fix <a href="https://redirect.github.com/evanw/esbuild/issues/3546";>#3546</a>: 
don't transform <code>require</code> glob imports</li>
   <li><a 
href="https://github.com/evanw/esbuild/commit/e1b7050aa074da1a0a846a01b4a3c82857128944";><code>e1b7050</code></a>
 fix <a href="https://redirect.github.com/evanw/esbuild/issues/3319";>#3319</a>: 
missing symbol usage in glob transform</li>
   <li>Additional commits viewable in <a 
href="https://github.com/evanw/esbuild/compare/v0.19.2...v0.19.11";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   
   [![Dependabot compatibility 
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=esbuild&package-manager=npm_and_yarn&previous-version=0.19.2&new-version=0.19.11)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
   
   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-automerge-start)
   [//]: # (dependabot-automerge-end)
   
   ---
   
   <details>
   <summary>Dependabot commands and options</summary>
   <br />
   
   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 show <dependency name> ignore conditions` will show all of 
the ignore conditions of the specified dependency
   - `@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)
   
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to