chore(deps): update dependencies (non-major) #33

Merged
t.behrendt merged 1 commits from renovate/dependencies-(non-major) into main 2025-12-07 09:58:04 +01:00
Collaborator

This PR contains the following updates:

Package Change Age Confidence
@types/node (source) ^24.3.0 -> ^24.10.0 age confidence
esbuild ^0.25.9 -> ^0.27.0 age confidence
ts-jest (source) ^29.4.1 -> ^29.4.5 age confidence

Release Notes

evanw/esbuild (esbuild)

v0.27.1

Compare Source

  • Fix bundler bug with var nested inside if (#​4348)

    This release fixes a bug with the bundler that happens when importing an ES module using require (which causes it to be wrapped) and there's a top-level var inside an if statement without being wrapped in a { ... } block (and a few other conditions). The bundling transform needed to hoist these var declarations outside of the lazy ES module wrapper for correctness. See the issue for details.

  • Fix minifier bug with for inside try inside label (#​4351)

    This fixes an old regression from version v0.21.4. Some code was introduced to move the label inside the try statement to address a problem with transforming labeled for await loops to avoid the await (the transformation involves converting the for await loop into a for loop and wrapping it in a try statement). However, it introduces problems for cross-compiled JVM code that uses all three of these features heavily. This release restricts this transform to only apply to for loops that esbuild itself generates internally as part of the for await transform. Here is an example of some affected code:

    // Original code
    d: {
      e: {
        try {
          while (1) { break d }
        } catch { break e; }
      }
    }
    
    // Old output (with --minify)
    a:try{e:for(;;)break a}catch{break e}
    
    // New output (with --minify)
    a:e:try{for(;;)break a}catch{break e}
    
  • Inline IIFEs containing a single expression (#​4354)

    Previously inlining of IIFEs (immediately-invoked function expressions) only worked if the body contained a single return statement. Now it should also work if the body contains a single expression statement instead:

    // Original code
    const foo = () => {
      const cb = () => {
        console.log(x())
      }
      return cb()
    }
    
    // Old output (with --minify)
    const foo=()=>(()=>{console.log(x())})();
    
    // New output (with --minify)
    const foo=()=>{console.log(x())};
    
  • The minifier now strips empty finally clauses (#​4353)

    This improvement means that finally clauses containing dead code can potentially cause the associated try statement to be removed from the output entirely in minified builds:

    // Original code
    function foo(callback) {
      if (DEBUG) stack.push(callback.name);
      try {
        callback();
      } finally {
        if (DEBUG) stack.pop();
      }
    }
    
    // Old output (with --minify --define:DEBUG=false)
    function foo(a){try{a()}finally{}}
    
    // New output (with --minify --define:DEBUG=false)
    function foo(a){a()}
    
  • Allow tree-shaking of the Symbol constructor

    With this release, calling Symbol is now considered to be side-effect free when the argument is known to be a primitive value. This means esbuild can now tree-shake module-level symbol variables:

    // Original code
    const a = Symbol('foo')
    const b = Symbol(bar)
    
    // Old output (with --tree-shaking=true)
    const a = Symbol("foo");
    const b = Symbol(bar);
    
    // New output (with --tree-shaking=true)
    const b = Symbol(bar);
    

v0.27.0

Compare Source

This release deliberately contains backwards-incompatible changes. To avoid automatically picking up releases like this, you should either be pinning the exact version of esbuild in your package.json file (recommended) or be using a version range syntax that only accepts patch upgrades such as ^0.26.0 or ~0.26.0. See npm's documentation about semver for more information.

  • Use Uint8Array.fromBase64 if available (#​4286)

    With this release, esbuild's binary loader will now use the new Uint8Array.fromBase64 function unless it's unavailable in the configured target environment. If it's unavailable, esbuild's previous code for this will be used as a fallback. Note that this means you may now need to specify target when using this feature with Node (for example --target=node22) unless you're using Node v25+.

  • Update the Go compiler from v1.23.12 to v1.25.4 (#​4208, #​4311)

    This raises the operating system requirements for running esbuild:

    • Linux: now requires a kernel version of 3.2 or later
    • macOS: now requires macOS 12 (Monterey) or later

v0.26.0

Compare Source

  • Enable trusted publishing (#​4281)

    GitHub and npm are recommending that maintainers for packages such as esbuild switch to trusted publishing. With this release, a VM on GitHub will now build and publish all of esbuild's packages to npm instead of me. In theory.

    Unfortunately there isn't really a way to test that this works other than to do it live. So this release is that live test. Hopefully this release is uneventful and is exactly the same as the previous one (well, except for the green provenance attestation checkmark on npm that happens with trusted publishing).

kulshekhar/ts-jest (ts-jest)

v29.4.6

Compare Source

Bug Fixes

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


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

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Change | Age | Confidence | |---|---|---|---| | [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`^24.3.0` -> `^24.10.0`](https://renovatebot.com/diffs/npm/@types%2fnode/24.10.0/24.10.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/24.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/24.10.0/24.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [esbuild](https://github.com/evanw/esbuild) | [`^0.25.9` -> `^0.27.0`](https://renovatebot.com/diffs/npm/esbuild/0.25.12/0.27.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/esbuild/0.27.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/esbuild/0.25.12/0.27.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [ts-jest](https://kulshekhar.github.io/ts-jest) ([source](https://github.com/kulshekhar/ts-jest)) | [`^29.4.1` -> `^29.4.5`](https://renovatebot.com/diffs/npm/ts-jest/29.4.5/29.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ts-jest/29.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ts-jest/29.4.5/29.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>evanw/esbuild (esbuild)</summary> ### [`v0.27.1`](https://github.com/evanw/esbuild/blob/HEAD/CHANGELOG.md#0271) [Compare Source](https://github.com/evanw/esbuild/compare/v0.27.0...v0.27.1) - Fix bundler bug with `var` nested inside `if` ([#&#8203;4348](https://github.com/evanw/esbuild/issues/4348)) This release fixes a bug with the bundler that happens when importing an ES module using `require` (which causes it to be wrapped) and there's a top-level `var` inside an `if` statement without being wrapped in a `{ ... }` block (and a few other conditions). The bundling transform needed to hoist these `var` declarations outside of the lazy ES module wrapper for correctness. See the issue for details. - Fix minifier bug with `for` inside `try` inside label ([#&#8203;4351](https://github.com/evanw/esbuild/issues/4351)) This fixes an old regression from [version v0.21.4](https://github.com/evanw/esbuild/releases/v0.21.4). Some code was introduced to move the label inside the `try` statement to address a problem with transforming labeled `for await` loops to avoid the `await` (the transformation involves converting the `for await` loop into a `for` loop and wrapping it in a `try` statement). However, it introduces problems for cross-compiled JVM code that uses all three of these features heavily. This release restricts this transform to only apply to `for` loops that esbuild itself generates internally as part of the `for await` transform. Here is an example of some affected code: ```js // Original code d: { e: { try { while (1) { break d } } catch { break e; } } } // Old output (with --minify) a:try{e:for(;;)break a}catch{break e} // New output (with --minify) a:e:try{for(;;)break a}catch{break e} ``` - Inline IIFEs containing a single expression ([#&#8203;4354](https://github.com/evanw/esbuild/issues/4354)) Previously inlining of IIFEs (immediately-invoked function expressions) only worked if the body contained a single `return` statement. Now it should also work if the body contains a single expression statement instead: ```js // Original code const foo = () => { const cb = () => { console.log(x()) } return cb() } // Old output (with --minify) const foo=()=>(()=>{console.log(x())})(); // New output (with --minify) const foo=()=>{console.log(x())}; ``` - The minifier now strips empty `finally` clauses ([#&#8203;4353](https://github.com/evanw/esbuild/issues/4353)) This improvement means that `finally` clauses containing dead code can potentially cause the associated `try` statement to be removed from the output entirely in minified builds: ```js // Original code function foo(callback) { if (DEBUG) stack.push(callback.name); try { callback(); } finally { if (DEBUG) stack.pop(); } } // Old output (with --minify --define:DEBUG=false) function foo(a){try{a()}finally{}} // New output (with --minify --define:DEBUG=false) function foo(a){a()} ``` - Allow tree-shaking of the `Symbol` constructor With this release, calling `Symbol` is now considered to be side-effect free when the argument is known to be a primitive value. This means esbuild can now tree-shake module-level symbol variables: ```js // Original code const a = Symbol('foo') const b = Symbol(bar) // Old output (with --tree-shaking=true) const a = Symbol("foo"); const b = Symbol(bar); // New output (with --tree-shaking=true) const b = Symbol(bar); ``` ### [`v0.27.0`](https://github.com/evanw/esbuild/blob/HEAD/CHANGELOG.md#0270) [Compare Source](https://github.com/evanw/esbuild/compare/v0.26.0...v0.27.0) **This release deliberately contains backwards-incompatible changes.** To avoid automatically picking up releases like this, you should either be pinning the exact version of `esbuild` in your `package.json` file (recommended) or be using a version range syntax that only accepts patch upgrades such as `^0.26.0` or `~0.26.0`. See npm's documentation about [semver](https://docs.npmjs.com/cli/v6/using-npm/semver/) for more information. - Use `Uint8Array.fromBase64` if available ([#&#8203;4286](https://github.com/evanw/esbuild/issues/4286)) With this release, esbuild's `binary` loader will now use the new [`Uint8Array.fromBase64`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array/fromBase64) function unless it's unavailable in the configured target environment. If it's unavailable, esbuild's previous code for this will be used as a fallback. Note that this means you may now need to specify `target` when using this feature with Node (for example `--target=node22`) unless you're using Node v25+. - Update the Go compiler from v1.23.12 to v1.25.4 ([#&#8203;4208](https://github.com/evanw/esbuild/issues/4208), [#&#8203;4311](https://github.com/evanw/esbuild/pull/4311)) This raises the operating system requirements for running esbuild: - Linux: now requires a kernel version of 3.2 or later - macOS: now requires macOS 12 (Monterey) or later ### [`v0.26.0`](https://github.com/evanw/esbuild/blob/HEAD/CHANGELOG.md#0260) [Compare Source](https://github.com/evanw/esbuild/compare/v0.25.12...v0.26.0) - Enable trusted publishing ([#&#8203;4281](https://github.com/evanw/esbuild/issues/4281)) GitHub and npm are recommending that maintainers for packages such as esbuild switch to [trusted publishing](https://docs.npmjs.com/trusted-publishers). With this release, a VM on GitHub will now build and publish all of esbuild's packages to npm instead of me. In theory. Unfortunately there isn't really a way to test that this works other than to do it live. So this release is that live test. Hopefully this release is uneventful and is exactly the same as the previous one (well, except for the green provenance attestation checkmark on npm that happens with trusted publishing). </details> <details> <summary>kulshekhar/ts-jest (ts-jest)</summary> ### [`v29.4.6`](https://github.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2946-2025-12-01) [Compare Source](https://github.com/kulshekhar/ts-jest/compare/v29.4.5...v29.4.6) ##### Bug Fixes - log hybrid module as warning instead of failing tests ([#&#8203;5144](https://github.com/kulshekhar/ts-jest/issues/5144)) ([528d37c](https://github.com/kulshekhar/ts-jest/commit/528d37c125a392a4a6e44a1bf399943410298390)), closes [#&#8203;5130](https://github.com/kulshekhar/ts-jest/issues/5130) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - 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. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xLjMiLCJ1cGRhdGVkSW5WZXIiOiI0Mi4yNi4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
renovate-bot force-pushed renovate/dependencies-(non-major) from 08e1a789eb to 1badfb64d7 2025-11-16 14:47:58 +01:00 Compare
renovate-bot changed title from chore(deps): update dependency esbuild to ^0.26.0 to chore(deps): update dependencies (non-major) 2025-11-16 14:48:01 +01:00
t.behrendt approved these changes 2025-11-16 15:13:04 +01:00
Dismissed
renovate-bot force-pushed renovate/dependencies-(non-major) from 1badfb64d7 to 5271e92471 2025-11-30 10:01:09 +01:00 Compare
renovate-bot force-pushed renovate/dependencies-(non-major) from 5271e92471 to ddfc23ce9c 2025-11-30 13:01:09 +01:00 Compare
renovate-bot force-pushed renovate/dependencies-(non-major) from ddfc23ce9c to 8abf8feecc 2025-12-04 19:01:22 +01:00 Compare
t.behrendt approved these changes 2025-12-07 09:57:58 +01:00
t.behrendt merged commit 3ed460c651 into main 2025-12-07 09:58:04 +01:00
t.behrendt deleted branch renovate/dependencies-(non-major) 2025-12-07 09:58:05 +01:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: t.behrendt/conventional-semantic-git-tag-increment#33