helloadhavan/github_issues huggingface dataset:
Repository: denoland/deno
Pull request: fix(ext/node): cancel pending ipc writes on channel close

Fixes the issue described in https://github.com/denoland/deno/issues/23882#issuecomment-2423316362.

The parent was starting to send a message right before the process would exit, and the channel closed in the middle of the write. Unlike with reads, we weren't cancelling the pending writes, which resulted in a `Broken pipe` error surfacing to the user.

Changed files:
filename: ext/node/ops/ipc.rs
patch: @@ -216,10 +216,17 @@ mod impl_ {
       queue_ok.set_index(scope, 0, v);
     }
     Ok(async move {
-      stream.clone().write_msg_bytes(&serialized).await?;
+      let cancel = stream.cancel.clone();
+      let result = stream
+        .clone()
+        .write_msg_bytes(&serialized)
+        .or_cancel(cancel)
+        .await;
+      // adjust count even on error
       stream
         .queued_bytes
         .fetch_sub(serialized.len(), std::sync::atomic::Ordering::Relaxed);
+      result??;
       Ok(())
     })
   }

filename: ext/node/polyfills/internal/child_process.ts
patch: @@ -1339,7 +1339,7 @@ export function setupChannel(target: any, ipc: number) {
           }
         }
 
-        process.nextTick(handleMessage, msg);
+        nextTick(handleMessage, msg);
       }
     } catch (err) {
       if (
@@ -1400,7 +1400,7 @@ export function setupChannel(target: any, ipc: number) {
     if (!target.connected) {
       const err = new ERR_IPC_CHANNEL_CLOSED();
       if (typeof callback === "function") {
-        process.nextTick(callback, err);
+        nextTick(callback, err);
       } else {
         nextTick(() => target.emit("error", err));
       }
@@ -1416,7 +1416,18 @@ export function setupChannel(target: any, ipc: number) {
       .then(() => {
         control.unrefCounted();
         if (callback) {
-          process.nextTick(callback, null);
+          nextTick(callback, null);
+        }
+      }, (err: Error) => {
+        control.unrefCounted();
+        if (err instanceof Deno.errors.Interrupted) {
+          // Channel closed on us mid-write.
+        } else {
+          if (typeof callback === "function") {
+            nextTick(callback, err);
+          } else {
+            nextTick(() => target.emit("error", err));
+          }
         }
       });
     return queueOk[0];
@@ -1433,7 +1444,7 @@ export function setupChannel(target: any, ipc: number) {
     target.connected = false;
     target[kCanDisconnect] = false;
     control[kControlDisconnect]();
-    process.nextTick(() => {
+    nextTick(() => {
       target.channel = null;
       core.close(ipc);
       target.emit("disconnect");
Repository: nodejs/node
Pull request: module: prevent crashes in require.resolve() when path is not a string

Fixes: #47698

Previously, `require.resolve()` would crash when:
- The first parameter was a relative path and
- The `paths` array contained non-string entries

This commit fixes the issue by adding a check in `Module._findPath` to ensure all elements in `paths` are strings, and adding a validation in `stat` before calling `InternalModuleStat` to guard against non-string filenames.


Changed files:
filename: lib/internal/modules/cjs/loader.js
patch: @@ -181,6 +181,7 @@ const {
 
 const {
   codes: {
+    ERR_INVALID_ARG_TYPE,
     ERR_INVALID_ARG_VALUE,
     ERR_INVALID_MODULE_SPECIFIER,
     ERR_REQUIRE_CYCLE_MODULE,
@@ -246,6 +247,9 @@ function wrapModuleLoad(request, parent, isMain) {
  * @param {string} filename Absolute path to the file
  */
 function stat(filename) {
+  // Guard against internal bugs where a non-string filename is passed in by mistake.
+  assert(typeof filename === 'string');
+
   filename = path.toNamespacedPath(filename);
   if (statCache !== null) {
     const result = statCache.get(filename);
@@ -738,6 +742,9 @@ Module._findPath = function(request, paths, isMain, conditions = getCjsCondition
   for (let i = 0; i < paths.length; i++) {
     // Don't search further if path doesn't exist
     const curPath = paths[i];
+    if (typeof curPath !== 'string') {
+      throw new ERR_INVALID_ARG_TYPE('paths', 'array of strings', paths);
+    }
     if (insidePath && curPath && _stat(curPath) < 1) {
       continue;
     }

filename: test/parallel/test-require-resolve-invalid-paths.js
patch: @@ -0,0 +1,18 @@
+'use strict';
+
+require('../common');
+const assert = require('assert');
+
+// Test invalid `paths` entries: Ensure non-string entries throw an error
+{
+  const paths = [1, false, null, undefined, () => {}, {}];
+  paths.forEach((value) => {
+    assert.throws(
+      () => require.resolve('.', { paths: [value] }),
+      {
+        name: 'TypeError',
+        code: 'ERR_INVALID_ARG_TYPE',
+      }
+    );
+  });
+}
Repository: ggml-org/llama.cpp
Pull request: SYCL: disable faulty fp16 exp kernel

Took the improvements from the GLU branch to reduce the number of changes there and disabled for the time being the exp fp16 kernel which suddenly started failing (even locally). 
I suspect that it is because of the latest Intel-oneapi-base-toolkit update.

Changed files:
filename: ggml/src/ggml-sycl/ggml-sycl.cpp
patch: @@ -4215,7 +4215,6 @@ static bool ggml_backend_sycl_device_supports_op(ggml_backend_dev_t dev, const g
                 case GGML_UNARY_OP_GELU_QUICK:
                 case GGML_UNARY_OP_GELU_ERF:
                 case GGML_UNARY_OP_TANH:
-                case GGML_UNARY_OP_EXP:
                 case GGML_UNARY_OP_SGN:
                 case GGML_UNARY_OP_ABS:
                 case GGML_UNARY_OP_ELU:
@@ -4224,6 +4223,9 @@ static bool ggml_backend_sycl_device_supports_op(ggml_backend_dev_t dev, const g
 #else
                     return ggml_is_contiguous(op->src[0]) && (op->src[0]->type == GGML_TYPE_F32 && op->type == GGML_TYPE_F32) && (op->type == op->src[0]->type);
 #endif
+                case GGML_UNARY_OP_EXP:
+                     // Disable FP16 until we find out the root cause of failing fp16 sycl::exp
+                    return ggml_is_contiguous(op->src[0]) && (op->type == op->src[0]->type) && op->src[0]->type == GGML_TYPE_F32;
                 default:
                     return false;
             }
Repository: huggingface/transformers
Pull request: [paligemma] fix processor with suffix

# What does this PR do?

Fixes https://github.com/huggingface/transformers/issues/38341 and adds a test for that


Changed files:
filename: src/transformers/models/paligemma/processing_paligemma.py
patch: @@ -315,7 +315,8 @@ def __call__(
         return_data = {**inputs, "pixel_values": pixel_values}
 
         if return_token_type_ids:
-            labels = inputs["input_ids"].masked_fill(inputs["token_type_ids"] == 0, -100)
+            labels = np.array(inputs["input_ids"])
+            labels[np.array(inputs["token_type_ids"]) == 0] = -100
             return_data.update({"labels": labels})
 
         if return_mm_token_type_ids:

filename: tests/models/paligemma/test_processor_paligemma.py
patch: @@ -62,6 +62,20 @@ def test_image_seq_length(self):
         )
         self.assertEqual(len(inputs["input_ids"][0]), 112)
 
+    @require_torch
+    def test_call_with_suffix(self):
+        input_str = "lower newer"
+        suffix = "upper older longer string"
+        image_input = self.prepare_image_inputs()
+        processor = self.get_processor()
+        inputs = processor(text=input_str, images=image_input, suffix=suffix)
+        self.assertTrue("labels" in inputs)
+        self.assertEqual(len(inputs["labels"][0]), len(inputs["input_ids"][0]))
+
+        inputs = processor(text=input_str, images=image_input, suffix=suffix, return_tensors="pt")
+        self.assertTrue("labels" in inputs)
+        self.assertEqual(len(inputs["labels"][0]), len(inputs["input_ids"][0]))
+
     def test_text_with_image_tokens(self):
         image_processor = self.get_component("image_processor")
         tokenizer = self.get_component("tokenizer")
Repository: electron/electron
Pull request: fix: silence -Wunsafe-buffer-usage warning in GetPreferredLanguages()

#### Description of Change

Part 20 in a [series](https://github.com/electron/electron/pull/43477) to fix `-Wunsafe-buffer-usage` warnings in `shell/`.  

This PR silences a warning caused by a call to `g_get_language_names()`. It's unavoidable due to that function's API, so we silence the warning by wrapping the pointer math in an `UNSAFE_MACROS()` macro add a [`// SAFETY`](https://chromium.googlesource.com/chromium/src/+/main/docs/unsafe_buffers.md#suppressions) comment  explaining what's up.

Warning silenced by this PR:

```
../../electron/shell/common/language_util_linux.cc:25:24: error: unsafe pointer arithmetic [-Werror,-Wunsafe-buffer-usage]
   25 |   for (; *languages; ++languages) {
      |                        ^~~~~~~~~
../../electron/shell/common/language_util_linux.cc:25:24: note: See //docs/unsafe_buffers.md for help.
1 error generated.
```

#### Checklist

- [x] PR description included and stakeholders cc'd
- [x] `npm test` passes
- [x] [PR release notes](https://github.com/electron/clerk/blob/main/README.md) describe the change in a way relevant to app developers, and are [capitalized, punctuated, and past tense](https://github.com/electron/clerk/blob/main/README.md#examples).

#### Release Notes

Notes: none

Changed files:
filename: shell/common/language_util_linux.cc
patch: @@ -22,7 +22,10 @@ std::vector<std::string> GetPreferredLanguages() {
   DCHECK(languages);   // A valid pointer is guaranteed.
   DCHECK(*languages);  // At least one entry, "C", is guaranteed.
 
-  for (; *languages; ++languages) {
+  // SAFETY: |g_get_language_names()| returns a glib-owned array
+  // of const C strings, terminated by an empty string.
+  // This loop is the correct way to walk through its return values.
+  for (; *languages; UNSAFE_BUFFERS(++languages)) {
     if (strcmp(*languages, "C") != 0) {
       preferredLanguages.push_back(base::i18n::GetCanonicalLocale(*languages));
     }
Repository: facebook/react
Pull request: Remove check in renderDidSuspendDelayIfPossible

I don't think we need this anymore. It was added originally because RootSuspended would take priority over RootSuspendedWithDelay. But we've since changed it: any "bad" fallback state is permitted to block a "good" fallback state.

The other status flags that this check used to account for are RootDidNotComplete and RootFatalErrored:

- RootFatalErrored is like an invariant violation, it means something went really wrong already and we can't recover from it
- RootCompleted and RootDidNotComplete are only set at the very end of the work loop, there's no way for renderDidSuspendDelayIfPossible to sneak in after that (at least none that I can think of — it's only called from the render phase)

So I think we can just delete this.

It's entirely possible there's some scenario I haven't considered, though, which is why I'm submitting this change as its own PR. To preserve the ability to bisect to it later.

Changed files:
filename: packages/react-reconciler/src/ReactFiberWorkLoop.new.js
patch: @@ -1926,13 +1926,7 @@ export function renderDidSuspend(): void {
 }
 
 export function renderDidSuspendDelayIfPossible(): void {
-  if (
-    workInProgressRootExitStatus === RootInProgress ||
-    workInProgressRootExitStatus === RootSuspended ||
-    workInProgressRootExitStatus === RootErrored
-  ) {
-    workInProgressRootExitStatus = RootSuspendedWithDelay;
-  }
+  workInProgressRootExitStatus = RootSuspendedWithDelay;
 
   // Check if there are updates that we skipped tree that might have unblocked
   // this render.

filename: packages/react-reconciler/src/ReactFiberWorkLoop.old.js
patch: @@ -1926,13 +1926,7 @@ export function renderDidSuspend(): void {
 }
 
 export function renderDidSuspendDelayIfPossible(): void {
-  if (
-    workInProgressRootExitStatus === RootInProgress ||
-    workInProgressRootExitStatus === RootSuspended ||
-    workInProgressRootExitStatus === RootErrored
-  ) {
-    workInProgressRootExitStatus = RootSuspendedWithDelay;
-  }
+  workInProgressRootExitStatus = RootSuspendedWithDelay;
 
   // Check if there are updates that we skipped tree that might have unblocked
   // this render.
Repository: denoland/deno
Pull request: fix(ext/ffi): return u64/i64 as bigints from nonblocking ffi calls

Fixes https://github.com/denoland/deno/issues/25194

Changed files:
filename: Cargo.lock
patch: @@ -1577,6 +1577,7 @@ dependencies = [
  "libffi",
  "libffi-sys",
  "log",
+ "num-bigint",
  "serde",
  "serde-value",
  "serde_json",

filename: ext/ffi/Cargo.toml
patch: @@ -21,6 +21,7 @@ dynasmrt = "1.2.3"
 libffi = "=3.2.0"
 libffi-sys = "=2.3.0"
 log.workspace = true
+num-bigint.workspace = true
 serde.workspace = true
 serde-value = "0.7"
 serde_json = "1.0"

filename: ext/ffi/call.rs
patch: @@ -9,12 +9,14 @@ use crate::FfiPermissions;
 use crate::ForeignFunction;
 use deno_core::op2;
 use deno_core::serde_json::Value;
+use deno_core::serde_v8::BigInt as V8BigInt;
 use deno_core::serde_v8::ExternalPointer;
 use deno_core::unsync::spawn_blocking;
 use deno_core::v8;
 use deno_core::OpState;
 use deno_core::ResourceId;
 use libffi::middle::Arg;
+use num_bigint::BigInt;
 use serde::Serialize;
 use std::cell::RefCell;
 use std::ffi::c_void;
@@ -202,6 +204,7 @@ where
 #[serde(untagged)]
 pub enum FfiValue {
   Value(Value),
+  BigInt(V8BigInt),
   External(ExternalPointer),
 }
 
@@ -251,18 +254,18 @@ fn ffi_call(
       NativeType::I32 => {
         FfiValue::Value(Value::from(cif.call::<i32>(fun_ptr, &call_args)))
       }
-      NativeType::U64 => {
-        FfiValue::Value(Value::from(cif.call::<u64>(fun_ptr, &call_args)))
-      }
-      NativeType::I64 => {
-        FfiValue::Value(Value::from(cif.call::<i64>(fun_ptr, &call_args)))
-      }
-      NativeType::USize => {
-        FfiValue::Value(Value::from(cif.call::<usize>(fun_ptr, &call_args)))
-      }
-      NativeType::ISize => {
-        FfiValue::Value(Value::from(cif.call::<isize>(fun_ptr, &call_args)))
-      }
+      NativeType::U64 => FfiValue::BigInt(V8BigInt::from(BigInt::from(
+        cif.call::<u64>(fun_ptr, &call_args),
+      ))),
+      NativeType::I64 => FfiValue::BigInt(V8BigInt::from(BigInt::from(
+        cif.call::<i64>(fun_ptr, &call_args),
+      ))),
+      NativeType::USize => FfiValue::BigInt(V8BigInt::from(BigInt::from(
+        cif.call::<usize>(fun_ptr, &call_args),
+      ))),
+      NativeType::ISize => FfiValue::BigInt(V8BigInt::from(BigInt::from(
+        cif.call::<isize>(fun_ptr, &call_args),
+      ))),
       NativeType::F32 => {
         FfiValue::Value(Value::from(cif.call::<f32>(fun_ptr, &call_args)))
       }

filename: tests/ffi/tests/integration_tests.rs
patch: @@ -95,10 +95,10 @@ fn basic() {
     579.912\n\
     579.912\n\
     579\n\
-    8589934590\n\
-    -8589934590\n\
-    8589934590\n\
-    -8589934590\n\
+    8589934590n\n\
+    -8589934590n\n\
+    8589934590n\n\
+    -8589934590n\n\
     9007199254740992n\n\
     9007199254740992n\n\
     -9007199254740992n\n\
Repository: electron/electron
Pull request: build: fixup reclient use for prod builds

Backport of #44340

See that PR for details.


Notes: none

Changed files:
filename: .github/actions/build-electron/action.yml
patch: @@ -160,21 +160,19 @@ runs:
       run: |
         cd src
         gn gen out/ffmpeg --args="import(\"//electron/build/args/ffmpeg.gn\") use_remoteexec=true $GN_EXTRA_ARGS"
-        autoninja -C out/ffmpeg electron:electron_ffmpeg_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:electron_ffmpeg_zip -C ../../out/ffmpeg -j $NUMBER_OF_NINJA_PROCESSES
     - name: Generate Hunspell Dictionaries ${{ inputs.step-suffix }}
       shell: bash
       if: ${{ inputs.is-release == 'true' && inputs.target-platform == 'linux' }}
       run: |
-        cd src
-        autoninja -C out/Default electron:hunspell_dictionaries_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:hunspell_dictionaries_zip -j $NUMBER_OF_NINJA_PROCESSES
     - name: Generate Libcxx ${{ inputs.step-suffix }}
       shell: bash
       if: ${{ inputs.is-release == 'true' && inputs.target-platform == 'linux' }}
       run: |
-        cd src
-        autoninja -C out/Default electron:libcxx_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
-        autoninja -C out/Default electron:libcxxabi_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
-        autoninja -C out/Default electron:libcxx_objects_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:libcxx_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:libcxxabi_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:libcxx_objects_zip -j $NUMBER_OF_NINJA_PROCESSES
     - name: Generate TypeScript Definitions ${{ inputs.step-suffix }}
       if: ${{ inputs.is-release == 'true' }}
       shell: bash
Repository: huggingface/transformers
Pull request: Stop autoconverting custom code checkpoints

Our Space for autoconverting code fails with custom code models, which causes problems when a custom code model only has Pytorch checkpoints!

This PR resolves this by not launching the autoconversion thread when the model is custom code!

Changed files:
filename: src/transformers/modeling_utils.py
patch: @@ -1005,6 +1005,7 @@ def _get_resolved_checkpoint_files(
     user_agent: dict,
     revision: str,
     commit_hash: Optional[str],
+    is_remote_code: bool,  # Because we can't determine this inside this function, we need it to be passed in
     transformers_explicit_filename: Optional[str] = None,
 ) -> Tuple[Optional[List[str]], Optional[Dict]]:
     """Get all the checkpoint filenames based on `pretrained_model_name_or_path`, and optional metadata if the
@@ -1201,7 +1202,10 @@ def _get_resolved_checkpoint_files(
                                 "_commit_hash": commit_hash,
                                 **has_file_kwargs,
                             }
-                            if not has_file(pretrained_model_name_or_path, safe_weights_name, **has_file_kwargs):
+                            if (
+                                not has_file(pretrained_model_name_or_path, safe_weights_name, **has_file_kwargs)
+                                and not is_remote_code
+                            ):
                                 Thread(
                                     target=auto_conversion,
                                     args=(pretrained_model_name_or_path,),
@@ -4550,6 +4554,7 @@ def from_pretrained(
             user_agent=user_agent,
             revision=revision,
             commit_hash=commit_hash,
+            is_remote_code=cls._auto_class is not None,
             transformers_explicit_filename=transformers_explicit_filename,
         )
Repository: nodejs/node
Pull request: src: use `args.This()` in zlib

Refs: https://github.com/nodejs/node/pull/53474



Changed files:
filename: src/node_zlib.cc
patch: @@ -878,7 +878,7 @@ class ZstdStream final : public CompressionStream<CompressionContext> {
     CHECK(args.Length() == 4 &&
           "init(params, pledgedSrcSize, writeResult, writeCallback)");
     ZstdStream* wrap;
-    ASSIGN_OR_RETURN_UNWRAP(&wrap, args.Holder());
+    ASSIGN_OR_RETURN_UNWRAP(&wrap, args.This());
 
     CHECK(args[2]->IsUint32Array());
     uint32_t* write_result = reinterpret_cast<uint32_t*>(Buffer::Data(args[2]));
Repository: denoland/deno
Pull request: fix(install): cache all exports of JSR packages listed in `deno.json`

Fixes #26498.

This was a sort of intentional decision originally, as I wanted to avoid caching extra files that may not be needed. It seems like that behavior is unintuitive, so I propose we cache all of the exports of listed jsr packages when you run a bare `deno install`.

Changed files:
filename: cli/tools/registry/pm/cache_deps.rs
patch: @@ -89,10 +89,6 @@ pub async fn cache_top_level_deps(
 
     while let Some(info_future) = info_futures.next().await {
       if let Some((specifier, info)) = info_future {
-        if info.export(".").is_some() {
-          roots.push(specifier.clone());
-          continue;
-        }
         let exports = info.exports();
         for (k, _) in exports {
           if let Ok(spec) = specifier.join(k) {

filename: tests/specs/install/jsr_exports/__test__.jsonc
patch: @@ -0,0 +1,6 @@
+{
+  "tempDir": true,
+  "steps": [
+    { "args": "install", "output": "install.out" }
+  ]
+}

filename: tests/specs/install/jsr_exports/deno.json
patch: @@ -0,0 +1,5 @@
+{
+  "imports": {
+    "@denotest/different-deps-per-export": "jsr:@denotest/different-deps-per-export@^1.0.0"
+  }
+}

filename: tests/specs/install/jsr_exports/install.out
patch: @@ -0,0 +1,12 @@
+[UNORDERED_START]
+Download http://127.0.0.1:4250/@denotest/different-deps-per-export/meta.json
+Download http://127.0.0.1:4250/@denotest/different-deps-per-export/1.0.0_meta.json
+Download http://127.0.0.1:4250/@denotest/different-deps-per-export/1.0.0/add.ts
+Download http://127.0.0.1:4250/@denotest/different-deps-per-export/1.0.0/subtract.ts
+Download http://127.0.0.1:4250/@denotest/add/meta.json
+Download http://127.0.0.1:4250/@denotest/subtract/meta.json
+Download http://127.0.0.1:4250/@denotest/add/1.0.0_meta.json
+Download http://127.0.0.1:4250/@denotest/subtract/1.0.0_meta.json
+Download http://127.0.0.1:4250/@denotest/add/1.0.0/mod.ts
+Download http://127.0.0.1:4250/@denotest/subtract/1.0.0/mod.ts
+[UNORDERED_END]
Repository: electron/electron
Pull request: build: fixup reclient use for prod builds

#### Description of Change

<!--
Thank you for your Pull Request. Please provide a description above and review
the requirements below.

Contributors guide: https://github.com/electron/electron/blob/main/CONTRIBUTING.md
-->
- #44280 inadvertently broke prod builds because there are some targets that we build using `autoninja` directly instead of calling `e build`.  This PR fixes that issue.

#### Checklist
<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

- [x] PR description included and stakeholders cc'd
- [x] [PR release notes](https://github.com/electron/clerk/blob/main/README.md) describe the change in a way relevant to app developers, and are [capitalized, punctuated, and past tense](https://github.com/electron/clerk/blob/main/README.md#examples).

#### Release Notes

Notes: none

Changed files:
filename: .github/actions/build-electron/action.yml
patch: @@ -159,21 +159,19 @@ runs:
       run: |
         cd src
         gn gen out/ffmpeg --args="import(\"//electron/build/args/ffmpeg.gn\") use_remoteexec=true $GN_EXTRA_ARGS"
-        autoninja -C out/ffmpeg electron:electron_ffmpeg_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:electron_ffmpeg_zip -C ../../out/ffmpeg -j $NUMBER_OF_NINJA_PROCESSES
     - name: Generate Hunspell Dictionaries ${{ inputs.step-suffix }}
       shell: bash
       if: ${{ inputs.is-release == 'true' && inputs.target-platform == 'linux' }}
       run: |
-        cd src
-        autoninja -C out/Default electron:hunspell_dictionaries_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:hunspell_dictionaries_zip -j $NUMBER_OF_NINJA_PROCESSES
     - name: Generate Libcxx ${{ inputs.step-suffix }}
       shell: bash
       if: ${{ inputs.is-release == 'true' && inputs.target-platform == 'linux' }}
       run: |
-        cd src
-        autoninja -C out/Default electron:libcxx_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
-        autoninja -C out/Default electron:libcxxabi_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
-        autoninja -C out/Default electron:libcxx_objects_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:libcxx_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:libcxxabi_headers_zip -j $NUMBER_OF_NINJA_PROCESSES
+        e build --target electron:libcxx_objects_zip -j $NUMBER_OF_NINJA_PROCESSES
     - name: Generate TypeScript Definitions ${{ inputs.step-suffix }}
       if: ${{ inputs.is-release == 'true' }}
       shell: bash