helloadhavan/github_issues huggingface dataset:
Repository: vuejs/vue
Pull request: fix(compiler): change /<!--/ to /<!\--/ (fix #7298)

need escape '-' to prevent being parsed to comment tag in script tag
fix #7298

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

**What kind of change does this PR introduce?** (check at least one)

- [x] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [ ] Build-related changes
- [ ] Other, please describe:

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [x] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [x] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [x] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: src/compiler/parser/html-parser.js
patch: @@ -22,7 +22,8 @@ const startTagOpen = new RegExp(`^<${qnameCapture}`)
 const startTagClose = /^\s*(\/?)>/
 const endTag = new RegExp(`^<\\/${qnameCapture}[^>]*>`)
 const doctype = /^<!DOCTYPE [^>]+>/i
-const comment = /^<!--/
+// #7298: escape - to avoid being pased as HTML comment when inlined in page
+const comment = /^<!\--/
 const conditionalComment = /^<!\[/
 
 let IS_REGEX_CAPTURING_BROKEN = false
@@ -152,7 +153,7 @@ export function parseHTML (html, options) {
         endTagLength = endTag.length
         if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {
           text = text
-            .replace(/<!--([\s\S]*?)-->/g, '$1')
+            .replace(/<!\--([\s\S]*?)-->/g, '$1') // #7298
             .replace(/<!\[CDATA\[([\s\S]*?)]]>/g, '$1')
         }
         if (shouldIgnoreFirstNewline(stackedTag, text)) {
Repository: ggml-org/llama.cpp
Pull request: impl : use 6 digits for tensor dims

Many models have vocabulary sizes, and thus tensor shapes, with more than 5 digits (ex: Gemma 3's vocab size is 262,208).

I already fixed this for `llama_format_tensor_shape` (tensor) but missed it for `llama_format_tensor_shape` (vector) until now. Oops.

*Make sure to read the [contributing guidelines](https://github.com/ggml-org/llama.cpp/blob/master/CONTRIBUTING.md) before submitting a PR*


Changed files:
filename: src/llama-impl.cpp
patch: @@ -100,9 +100,9 @@ std::string format(const char * fmt, ...) {
 
 std::string llama_format_tensor_shape(const std::vector<int64_t> & ne) {
     char buf[256];
-    snprintf(buf, sizeof(buf), "%5" PRId64, ne.at(0));
+    snprintf(buf, sizeof(buf), "%6" PRId64, ne.at(0));
     for (size_t i = 1; i < ne.size(); i++) {
-        snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), ", %5" PRId64, ne.at(i));
+        snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), ", %6" PRId64, ne.at(i));
     }
     return buf;
 }
Repository: huggingface/transformers
Pull request: [kernels] Fix failling tests

# What does this PR do?

After moving the use of `get_kernel` from `kernels` to using a wrapper around it from `hub_kernels.py`, we need to adapt the tests to override `get_kernel` inside `integrations/hub_kernels.py`

Changed files:
filename: tests/kernels/test_kernels.py
patch: @@ -44,6 +44,8 @@
     import kernels as kernels_pkg
     from kernels import Device, Mode, kernelize
 
+    import transformers.integrations.hub_kernels as hub_kernels_pkg
+
 
 @require_kernels
 @slow
@@ -95,6 +97,7 @@ def test_forward(self):
 
         self.EXPECTED_OUTPUT = set()
         self.EXPECTED_OUTPUT.add("Hello, I'm looking for a reliable and trustworthy online")
+        self.EXPECTED_OUTPUT.add("Hello! I'm excited to be a part of this")
 
         self.assertTrue(output in self.EXPECTED_OUTPUT)
 
@@ -249,7 +252,7 @@ def fake_get_kernel(repo_id, revision=None, version=None):
                 self.assertIn(repo_id, {"kernels-community/causal-conv1d"})
                 return sentinel
 
-            setattr(kernels_pkg, "get_kernel", fake_get_kernel)
+            setattr(hub_kernels_pkg, "get_kernel", fake_get_kernel)
             _KERNEL_MODULE_MAPPING.pop("causal-conv1d", None)
 
             mod1 = lazy_load_kernel("causal-conv1d")
@@ -286,15 +289,15 @@ def test_lazy_load_kernel_version(self):
             HUB[name] = {"repo_id": "kernels-community/causal-conv1d", "version": version_spec}  # type: ignore[assignment]
             _KERNEL_MODULE_MAPPING.pop(name, None)
 
-            def fake_get_kernel(repo_id, revision=None, version=None, user_agent=None):
+            def fake_get_kernel(repo_id, revision=None, version=None):
                 call_count["n"] += 1
                 self.assertEqual(repo_id, "kernels-community/causal-conv1d")
                 self.assertIsNone(revision, "revision must not be set when version is provided")
                 self.assertEqual(version, version_spec)
                 return sentinel_mod
 
             # Patch kernels.get_kernel so lazy_load_kernel picks it up on import
-            setattr(kernels_pkg, "get_kernel", fake_get_kernel)
+            setattr(hub_kernels_pkg, "get_kernel", fake_get_kernel)
 
             # Act
             mod1 = lazy_load_kernel(name)
Repository: nodejs/node
Pull request: tools: improve log output of `create-release-proposal`

It was bothering me that we were logging out the `BOT_TOKEN`, the solution was simply to move `set -ex` after the preliminary checks. We were also not checking for the presence of `git-node` in the dependency checks, and not explicitly listing the missing deps.
<!--
Before submitting a pull request, please read:

- the CONTRIBUTING guide at https://github.com/nodejs/node/blob/HEAD/CONTRIBUTING.md
- the commit message formatting guidelines at
  https://github.com/nodejs/node/blob/HEAD/doc/contributing/pull-requests.md#commit-message-guidelines

For code changes:
1. Include tests for any bug fixes or new features.
2. Update documentation if relevant.
3. Ensure that `make -j4 test` (UNIX), or `vcbuild test` (Windows) passes.

If you believe this PR should be highlighted in the Node.js CHANGELOG
please add the `notable-change` label.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.
-->


Changed files:
filename: tools/actions/create-release-proposal.sh
patch: @@ -1,7 +1,5 @@
 #!/bin/sh
 
-set -xe
-
 GITHUB_REPOSITORY=${GITHUB_REPOSITORY:-nodejs/node}
 BOT_TOKEN=${BOT_TOKEN:-}
 
@@ -19,10 +17,16 @@ if [ -z "$GITHUB_REPOSITORY" ] || [ -z "$BOT_TOKEN" ]; then
   exit 1
 fi
 
-if ! command -v node || ! command -v gh || ! command -v git || ! command -v awk; then
-  echo "Missing required dependencies"
-  exit 1
-fi
+HAS_MISSING_DEPS=
+for dep in node gh git git-node awk; do
+  command -v "$dep" > /dev/null || {
+    echo "Required dependency $dep is missing" >&2
+    HAS_MISSING_DEPS=1
+  }
+done
+[ -z "$HAS_MISSING_DEPS" ] || exit 1
+
+set -xe
 
 git node release --prepare --skipBranchDiff --yes --releaseDate "$RELEASE_DATE"
Repository: ggml-org/llama.cpp
Pull request: completion : Fix a typo in warning message

resuse -> reuse



Changed files:
filename: tools/completion/completion.cpp
patch: @@ -376,7 +376,7 @@ int main(int argc, char ** argv) {
             // remove any "future" tokens that we might have inherited from the previous session
             if (session_tokens.size() > n_match) {
                 if (!llama_memory_seq_rm(mem, -1, n_match, -1)) {
-                    LOG_WRN("%s: unable to resuse common prefix (for example, when the memory is recurrent)\n", __func__);
+                    LOG_WRN("%s: unable to reuse common prefix (for example, when the memory is recurrent)\n", __func__);
                     llama_memory_clear(mem, true);
                     session_tokens.clear();
                     n_match = 0;
Repository: vuejs/vue
Pull request: fixes gold / platinum sponsors on open collective

Fixes https://github.com/opencollective/opencollective/issues/777


Changed files:
filename: README.md
patch: @@ -143,16 +143,16 @@ Funds donated via Patreon goes directly to support Evan You's full-time work on
 
 <h4 align="center">Platinum</h4>
 
-<a href="https://opencollective.com/vuejs/tiers/platinumsponsors/0/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/platinumsponsors/0/avatar.svg"></a>
-<a href="https://opencollective.com/vuejs/tiers/platinumsponsors/1/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/platinumsponsors/1/avatar.svg"></a>
+<a href="https://opencollective.com/vuejs/tiers/platinum-sponsors/0/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/platinum-sponsors/0/avatar.svg"></a>
+<a href="https://opencollective.com/vuejs/tiers/platinum-sponsors/1/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/platinum-sponsors/1/avatar.svg"></a>
 
 <h4 align="center">Gold</h4>
 
-<a href="https://opencollective.com/vuejs/tiers/goldsponsors/0/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/goldsponsors/0/avatar.svg"></a>
-<a href="https://opencollective.com/vuejs/tiers/goldsponsors/1/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/goldsponsors/1/avatar.svg"></a>
-<a href="https://opencollective.com/vuejs/tiers/goldsponsors/2/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/goldsponsors/2/avatar.svg"></a>
-<a href="https://opencollective.com/vuejs/tiers/goldsponsors/3/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/goldsponsors/3/avatar.svg"></a>
-<a href="https://opencollective.com/vuejs/tiers/goldsponsors/4/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/goldsponsors/4/avatar.svg"></a>
+<a href="https://opencollective.com/vuejs/tiers/gold-sponsors/0/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/gold-sponsors/0/avatar.svg"></a>
+<a href="https://opencollective.com/vuejs/tiers/gold-sponsors/1/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/gold-sponsors/1/avatar.svg"></a>
+<a href="https://opencollective.com/vuejs/tiers/gold-sponsors/2/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/gold-sponsors/2/avatar.svg"></a>
+<a href="https://opencollective.com/vuejs/tiers/gold-sponsors/3/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/gold-sponsors/3/avatar.svg"></a>
+<a href="https://opencollective.com/vuejs/tiers/gold-sponsors/4/website" target="_blank"><img src="https://opencollective.com/vuejs/tiers/gold-sponsors/4/avatar.svg"></a>
 
 ---
Repository: vercel/next.js
Pull request: Fix pack-next script for next-swc

Specifying a folder in `files` didn't work:
https://github.com/vercel/next.js/blob/3bbb2e61d54c46df2b5bb0a4ecd7f0765ff93a72/packages/next-swc/package.json#L6

Previously, that folder wasn't in the tar:
```
tar -tf /Users/niklas/code/next.js-other/tarballs/next-swc.tar                                       
./README.md
./package.json
```

Changed files:
filename: scripts/pack-util.ts
patch: @@ -168,11 +168,11 @@ export async function packageFiles(path: string): Promise<string[]> {
     // We add the full path, but check for parent directories too.
     // This catches the case where the whole directory is added and then a single file from the directory.
     // The sorting before ensures that the directory comes before the files inside of the directory.
-    set.add(f)
     while (f.includes('/')) {
-      f = f.replace(/\/[^/]+$/, '')
+      f = f.replace(/\/[^/]*$/, '')
       if (set.has(f)) return false
     }
+    set.add(f)
     return true
   })
 }
Repository: ggml-org/llama.cpp
Pull request: Fix intel documentation link


Changed files:
filename: docs/build.md
patch: @@ -108,7 +108,7 @@ Building through oneAPI compilers will make avx_vnni instruction set available f
 - Using oneAPI docker image:
   If you do not want to source the environment vars and install oneAPI manually, you can also build the code using intel docker container: [oneAPI-basekit](https://hub.docker.com/r/intel/oneapi-basekit). Then, you can use the commands given above.
 
-Check [Optimizing and Running LLaMA2 on Intel® CPU](https://www.intel.com/content/www/us/en/content-details/791610/optimizing-and-running-llama2-on-intel-cpu.html) for more information.
+Check [Optimizing and Running LLaMA2 on Intel® CPU](https://builders.intel.com/solutionslibrary/optimizing-and-running-llama2-on-intel-cpu) for more information.
 
 ### Other BLAS libraries
Repository: vuejs/vue
Pull request: fix(types): make VNodeChildrenArrayContents type more accurate

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

**What kind of change does this PR introduce?** (check at least one)

- [x] Bugfix
- [ ] Feature
- [ ] Code style update
- [x] Refactor
- [ ] Build-related changes
- [ ] Other, please describe:

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [ ] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [x] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**
- Replaced `VNodeChildren` with `VNodeChildrenArrayContents` in its recursive declaration. The current `VNodeChildrenArrayContents` type looks inaccurate because it can include a scoped slot in the returned value of another scoped slot.
- `VNodeChildrenArrayContents` inherits `Array` interface so that we can narrow the type with `Array.isArray` function.

Changed files:
filename: types/test/options-test.ts
patch: @@ -1,4 +1,4 @@
-import Vue from "../index";
+import Vue, { VNode } from "../index";
 import { AsyncComponent, ComponentOptions, FunctionalComponentOptions } from "../index";
 import { CreateElement } from "../vue";
 
@@ -277,6 +277,19 @@ Vue.component('component-with-scoped-slot', {
   }
 })
 
+Vue.component('narrow-array-of-vnode-type', {
+  render (h): VNode {
+    const slot = this.$scopedSlots.default({})
+    if (typeof slot !== 'string') {
+      const first = slot[0]
+      if (!Array.isArray(first) && typeof first !== 'string') {
+        return first;
+      }
+    }
+    return h();
+  }
+})
+
 Vue.component('functional-component', {
   props: ['prop'],
   functional: true,

filename: types/vnode.d.ts
patch: @@ -3,9 +3,7 @@ import { Vue } from "./vue";
 export type ScopedSlot = (props: any) => VNodeChildrenArrayContents | string;
 
 export type VNodeChildren = VNodeChildrenArrayContents | [ScopedSlot] | string;
-export interface VNodeChildrenArrayContents {
-  [x: number]: VNode | string | VNodeChildren;
-}
+export interface VNodeChildrenArrayContents extends Array<VNode | string | VNodeChildrenArrayContents> {}
 
 export interface VNode {
   tag?: string;
Repository: huggingface/transformers
Pull request: fix(tvp): add missing type_vocab_size parameter to TvpConfig

## Summary
- Fixes #42925
- The `type_vocab_size` parameter was missing from `TvpConfig`, causing `AttributeError` when instantiating `TvpModel`
- Added the parameter with default value of 2, which matches all TVP models on Hugging Face Hub

## Test plan
- [x] Existing tests should pass (this adds a default value that matches existing models)

Changed files:
filename: src/transformers/models/tvp/configuration_tvp.py
patch: @@ -68,6 +68,8 @@ class TvpConfig(PreTrainedConfig):
         vocab_size (`int`, *optional*, defaults to 30522):
             Vocabulary size of the Tvp text model. Defines the number of different tokens that can be represented by
             the `inputs_ids` passed when calling [`TvpModel`].
+        type_vocab_size (`int`, *optional*, defaults to 2):
+            The vocabulary size of the `token_type_ids` passed when calling [`TvpModel`].
         hidden_size (`int`, *optional*, defaults to 768):
             Dimensionality of the encoder layers.
         intermediate_size (`int`, *optional*, defaults to 3072):
@@ -114,6 +116,7 @@ def __init__(
         max_img_size=448,
         num_frames=48,
         vocab_size=30522,
+        type_vocab_size=2,
         hidden_size=768,
         intermediate_size=3072,
         num_hidden_layers=12,
@@ -157,6 +160,7 @@ def __init__(
         self.max_img_size = max_img_size
         self.num_frames = num_frames
         self.vocab_size = vocab_size
+        self.type_vocab_size = type_vocab_size
         self.hidden_size = hidden_size
         self.intermediate_size = intermediate_size
         self.num_hidden_layers = num_hidden_layers
Repository: vuejs/vue
Pull request: fix(weex): default value for editor, fix #7165

/cc @Hanks10100 🌝

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

**What kind of change does this PR introduce?** (check at least one)

- [x] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [ ] Build-related changes
- [ ] Other, please describe:

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [x] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [x] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: test/weex/cases/recycle-list/components/editor.vue
patch: @@ -10,7 +10,7 @@
     props: ['message'],
     data () {
       return {
-        output: this.message | ''
+        output: this.message || ''
       }
     }
   }

filename: test/weex/cases/recycle-list/components/stateful-v-model.vdom.js
patch: @@ -41,7 +41,7 @@
         },
         attr: {
           type: 'text',
-          value: 0
+          value: 'No binding'
         }
       }]
     }]
Repository: facebook/react
Pull request: Hack to recover from reading the wrong Fiber

`requestFormReset` incorrectly tries to get the current dispatch queue from the Fiber. However, the Fiber might be the workInProgress which is an inconsistent state.

This hack just tries the other Fiber if it detects one of the known inconsistent states but there can be more.

Really we should stash the dispatch queue somewhere stateful which is effectively what `setState` does by binding it to the closure.


Changed files:
filename: packages/react-reconciler/src/ReactFiberHooks.js
patch: @@ -3355,8 +3355,16 @@ export function requestFormReset(formFiber: Fiber) {
     );
   }
 
-  const stateHook = ensureFormComponentIsStateful(formFiber);
+  let stateHook: Hook = ensureFormComponentIsStateful(formFiber);
   const newResetState = {};
+  if (stateHook.next === null) {
+    // Hack alert. If formFiber is the workInProgress Fiber then
+    // we might get a broken intermediate state. Try the alternate
+    // instead.
+    // TODO: We should really stash the Queue somewhere stateful
+    // just like how setState binds the Queue.
+    stateHook = (formFiber.alternate: any).memoizedState;
+  }
   const resetStateHook: Hook = (stateHook.next: any);
   const resetStateQueue = resetStateHook.queue;
   dispatchSetStateInternal(
Repository: electron/electron
Pull request: build: use powershell for Electron build step

Backport of #49144

See that PR for details.


Notes: none


Changed files:
filename: .github/actions/build-electron/action.yml
patch: @@ -45,6 +45,7 @@ runs:
       shell: bash
       run: echo "::add-matcher::src/electron/.github/problem-matchers/clang.json"
     - name: Build Electron ${{ inputs.step-suffix }}
+      if: ${{ inputs.target-platform != 'win' }}
       shell: bash
       run: |
         rm -rf "src/out/Default/Electron Framework.framework"
@@ -70,14 +71,37 @@ runs:
 
         # Upload build stats to Datadog
         if ! [ -z $DD_API_KEY ]; then
-          if [ "$TARGET_PLATFORM" = "win" ]; then
-            npx node electron/script/build-stats.mjs out/Default/siso.exe.INFO --upload-stats || true
-          else
-            npx node electron/script/build-stats.mjs out/Default/siso.INFO --upload-stats || true
-          fi
+          npx node electron/script/build-stats.mjs out/Default/siso.INFO --upload-stats || true          
         else
           echo "Skipping build-stats.mjs upload because DD_API_KEY is not set"
         fi
+    - name: Build Electron (Windows) ${{ inputs.step-suffix }}
+      if: ${{ inputs.target-platform == 'win' }}
+      shell: powershell
+      run: |
+        cd src\electron
+        git pack-refs
+        cd ..
+
+        $env:NINJA_SUMMARIZE_BUILD = 1
+        if ("${{ inputs.is-release }}" -eq "true") {          
+          e build --target electron:release_build
+        } else {
+          e build --target electron:testing_build
+        }
+        Copy-Item out\Default\.ninja_log out\electron_ninja_log
+        node electron\script\check-symlinks.js
+
+        # Upload build stats to Datadog
+        if ($env:DD_API_KEY) {
+          try {
+            npx node electron\script\build-stats.mjs out\Default\siso.exe.INFO --upload-stats
+          } catch {
+            Write-Host "Build stats upload failed, continuing..."
+          }
+        } else {
+          Write-Host "Skipping build-stats.mjs upload because DD_API_KEY is not set"
+        }
     - name: Verify dist.zip ${{ inputs.step-suffix }}
       shell: bash
       run: |