helloadhavan/github_issues huggingface dataset:
Repository: ggml-org/llama.cpp
Pull request: Add a warning for special devices

Add a warning for special GTX series cards that have low performance due to MMA kernels.

Changed files:
filename: ggml/src/ggml-cuda/ggml-cuda.cu
patch: @@ -204,6 +204,8 @@ static ggml_cuda_device_info ggml_cuda_init() {
     GGML_LOG_INFO("%s: GGML_CUDA_FORCE_CUBLAS: no\n", __func__);
 #endif // GGML_CUDA_FORCE_CUBLAS
     GGML_LOG_INFO("%s: found %d " GGML_CUDA_NAME " devices:\n", __func__, info.device_count);
+
+    std::vector<std::pair<int, std::string>> turing_devices_without_mma;
     for (int id = 0; id < info.device_count; ++id) {
         int device_vmm = 0;
 
@@ -261,7 +263,25 @@ static ggml_cuda_device_info ggml_cuda_init() {
         info.devices[id].cc = 100*prop.major + 10*prop.minor;
         GGML_LOG_INFO("  Device %d: %s, compute capability %d.%d, VMM: %s\n",
                         id, prop.name, prop.major, prop.minor, device_vmm ? "yes" : "no");
-#endif // defined(GGML_USE_HIP)
+        std::string device_name(prop.name);
+        if (device_name == "NVIDIA GeForce MX450") {
+            turing_devices_without_mma.push_back({ id, device_name });
+        } else if (device_name == "NVIDIA GeForce MX550") {
+            turing_devices_without_mma.push_back({ id, device_name });
+        } else if (device_name.substr(0, 21) == "NVIDIA GeForce GTX 16") {
+            turing_devices_without_mma.push_back({ id, device_name });
+        }
+#endif  // defined(GGML_USE_HIP)
+    }
+
+    if (ggml_cuda_highest_compiled_arch(GGML_CUDA_CC_TURING) >= GGML_CUDA_CC_TURING && !turing_devices_without_mma.empty()) {
+        GGML_LOG_INFO("The following devices will have suboptimal performance due to a lack of tensor cores:\n");
+        for (size_t device_pos = 0; device_pos < turing_devices_without_mma.size(); device_pos++) {
+            GGML_LOG_INFO(
+                "  Device %d: %s\n", turing_devices_without_mma[device_pos].first, turing_devices_without_mma[device_pos].second.c_str());
+        }
+        GGML_LOG_INFO(
+            "Consider compiling with CMAKE_CUDA_ARCHITECTURES=61-virtual;80-virtual and DGGML_CUDA_FORCE_MMQ to force the use of the Pascal code for Turing.\n");
     }
 
     for (int id = 0; id < info.device_count; ++id) {
Repository: denoland/deno
Pull request: test(ext/node): skip running test-http-agent-maxtotalsockets.js on darwin

This test case seems flaky on darwin on CI. I suggest we should skip it on darwin for now.

ref https://github.com/denoland/deno/actions/runs/14343397447/job/40207971728

Changed files:
filename: tests/node_compat/config.jsonc
patch: @@ -1409,6 +1409,7 @@
   },
   "darwinIgnore": {
     "parallel": [
+      "test-http-agent-maxtotalsockets.js",
       "test-net-allow-half-open.js",
       "test-net-socket-close-after-end.js",
       "test-fs-watchfile.js"
Repository: huggingface/transformers
Pull request: fix recompiles due to instance key, and deepcopy issues

# What does this PR do?
Deep copy and recompiles should be fixed

Changed files:
filename: src/transformers/modeling_utils.py
patch: @@ -2100,7 +2100,7 @@ def __init__(self, config: PretrainedConfig, *inputs, **kwargs):
         self._keep_in_fp32_modules_strict = copy.copy(self.__class__._keep_in_fp32_modules_strict)
 
         self._no_split_modules = self._no_split_modules or []
-        _CAN_RECORD_REGISTRY[self] = self._can_record_outputs  # added for executorch support only
+        _CAN_RECORD_REGISTRY[str(self.__class__)] = self._can_record_outputs  # added for executorch support only
 
     def post_init(self):
         """

filename: src/transformers/utils/generic.py
patch: @@ -27,7 +27,6 @@
 from enum import Enum
 from functools import partial, wraps
 from typing import Any, Callable, ContextManager, Optional, TypedDict
-from weakref import WeakKeyDictionary
 
 import numpy as np
 from packaging import version
@@ -44,7 +43,7 @@
 )
 
 
-_CAN_RECORD_REGISTRY = WeakKeyDictionary()
+_CAN_RECORD_REGISTRY = {}
 
 
 logger = logging.get_logger(__name__)
@@ -1008,7 +1007,7 @@ def wrapper(self, *args, **kwargs):
             for k, v in all_args["kwargs"].items():
                 all_args[k] = v
 
-        capture_flags = _CAN_RECORD_REGISTRY[self] or []  # there is a weak ref for executorch
+        capture_flags = _CAN_RECORD_REGISTRY.get(str(self.__class__), {})  # there is a weak ref for executorch
         recordable_keys = {
             f"output_{k}": all_args.get(
                 f"output_{k}",
Repository: vercel/next.js
Pull request: perf(turbopack): let some Clone be conditional in insert_alias_option

## What
As the title described.

Changed files:
filename: crates/next-core/src/next_import_map.rs
patch: @@ -112,7 +112,7 @@ pub async fn get_next_client_import_map(
 
     insert_alias_option(
         &mut import_map,
-        project_path.clone(),
+        &project_path,
         next_config.resolve_alias_options(),
         ["browser"],
     )
@@ -311,7 +311,7 @@ pub async fn get_next_server_import_map(
 
     insert_alias_option(
         &mut import_map,
-        project_path.clone(),
+        &project_path,
         next_config.resolve_alias_options(),
         [],
     )
@@ -453,7 +453,7 @@ pub async fn get_next_edge_import_map(
 
     insert_alias_option(
         &mut import_map,
-        project_path.clone(),
+        &project_path,
         next_config.resolve_alias_options(),
         [],
     )
@@ -1149,15 +1149,13 @@ pub async fn get_next_package(context_directory: FileSystemPath) -> Result<Vc<Fi
 
 pub async fn insert_alias_option<const N: usize>(
     import_map: &mut ImportMap,
-    project_path: FileSystemPath,
+    project_path: &FileSystemPath,
     alias_options: Vc<ResolveAliasMap>,
     conditions: [&'static str; N],
 ) -> Result<()> {
     let conditions = BTreeMap::from(conditions.map(|c| (c.into(), ConditionValue::Set)));
     for (alias, value) in &alias_options.await? {
-        if let Some(mapping) =
-            export_value_to_import_mapping(value, &conditions, project_path.clone())
-        {
+        if let Some(mapping) = export_value_to_import_mapping(value, &conditions, project_path) {
             import_map.insert_alias(alias, mapping);
         }
     }
@@ -1167,7 +1165,7 @@ pub async fn insert_alias_option<const N: usize>(
 fn export_value_to_import_mapping(
     value: &SubpathValue,
     conditions: &BTreeMap<RcStr, ConditionValue>,
-    project_path: FileSystemPath,
+    project_path: &FileSystemPath,
 ) -> Option<ResolvedVc<ImportMapping>> {
     let mut result = Vec::new();
     value.add_results(
@@ -1180,7 +1178,7 @@ fn export_value_to_import_mapping(
         None
     } else {
         Some(if result.len() == 1 {
-            ImportMapping::PrimaryAlternative(result[0].0.into(), Some(project_path))
+            ImportMapping::PrimaryAlternative(result[0].0.into(), Some(project_path.clone()))
                 .resolved_cell()
         } else {
             ImportMapping::Alternatives(
Repository: ggml-org/llama.cpp
Pull request: CUDA: return -1 for nonexistent compiled arch

Fixes https://github.com/ggml-org/llama.cpp/issues/15584 .

Simply return -1 for the "highest compiled arch" of a GPU architecture that the code was not compiled for, handling of this case is then the responsibility of the caller.

Changed files:
filename: ggml/src/ggml-cuda/common.cuh
patch: @@ -107,9 +107,9 @@ constexpr bool ggml_cuda_has_arch(const int arch) {
     return ggml_cuda_has_arch_impl(arch, __CUDA_ARCH_LIST__);
 }
 
-constexpr int ggml_cuda_highest_compiled_arch_impl(const int arch, const int cur) {
+constexpr int ggml_cuda_highest_compiled_arch_impl(const int /*arch*/, const int cur) {
     if (cur == 0) {
-        GGML_ABORT("ggml was not compiled with any CUDA arch <= %d", arch);
+        return -1;
     }
     return cur;
 }
Repository: nodejs/node
Pull request: async_hooks: enable AsyncLocalStorage once constructed

This fixes the leak behavior when using `enterWith` when no
`AsyncLocalStorage`s were enabled inside a promise. With this
change, the following code snippets will behave the same:

```js
import { AsyncLocalStorage } from 'node:async_hooks';

const als = new AsyncLocalStorage();

async function main () {
  await 1
  als.enterWith('internal');
}

await main()

console.log(als.getStore() ?? 'default');
```

```js
import { AsyncLocalStorage } from 'node:async_hooks';

const als = new AsyncLocalStorage();
als.enterWith(undefined); // Forcefully enable the AsyncLocalStorage.

async function main () {
  await 1
  als.enterWith('internal');
}

await main()

console.log(als.getStore() ?? 'default');
```

On the performance side, given that an `AsyncLocalStorage` is constructed, we should assume that it will be used and prefer correctness over lazy-initialization optimization.

Fixes: https://github.com/nodejs/node/issues/53037
Refs: https://github.com/nodejs/node/pull/58019

/cc @nodejs/diagnostics 

Changed files:
filename: lib/internal/async_local_storage/async_hooks.js
patch: @@ -51,6 +51,8 @@ class AsyncLocalStorage {
     if (options.name !== undefined) {
       this.#name = `${options.name}`;
     }
+
+    this._enable();
   }
 
   /** @type {string} */

filename: test/parallel/test-async-local-storage-enter-with.js
patch: @@ -0,0 +1,37 @@
+'use strict';
+const common = require('../common');
+const assert = require('assert');
+const { AsyncLocalStorage } = require('async_hooks');
+
+// Verify that `enterWith()` does not leak the store to the parent context in a promise.
+
+const als = new AsyncLocalStorage();
+
+async function asyncFunctionAfterAwait() {
+  await 0;
+  als.enterWith('after await');
+}
+
+function promiseThen() {
+  return Promise.resolve()
+    .then(() => {
+      als.enterWith('inside then');
+    });
+}
+
+async function asyncFunctionBeforeAwait() {
+  als.enterWith('before await');
+  await 0;
+}
+
+async function main() {
+  await asyncFunctionAfterAwait();
+  await promiseThen();
+  assert.strictEqual(als.getStore(), undefined);
+
+  // This is a known limitation of the `enterWith` API.
+  await asyncFunctionBeforeAwait();
+  assert.strictEqual(als.getStore(), 'before await');
+}
+
+main().then(common.mustCall());
Repository: denoland/deno
Pull request: 2.1.12

Release to fix how the LTS version incorrectly reports itself as 2.1.10 instead of 2.1.11.

```
> ./target/debug/deno -v     
deno 2.1.12
```

Ref: https://github.com/denoland/deno/issues/28849

Changed files:
filename: Cargo.lock
patch: @@ -1259,7 +1259,7 @@ dependencies = [
 
 [[package]]
 name = "deno"
-version = "2.1.11"
+version = "2.1.12"
 dependencies = [
  "anstream",
  "async-trait",
@@ -2704,7 +2704,7 @@ dependencies = [
 
 [[package]]
 name = "denort"
-version = "2.1.10"
+version = "2.1.12"
 dependencies = [
  "async-trait",
  "bincode",

filename: Releases.md
patch: @@ -6,6 +6,17 @@ https://github.com/denoland/deno/releases
 We also have one-line install commands at:
 https://github.com/denoland/deno_install
 
+### 2.1.12 / 2025.04.11
+
+The 2.1.11 release had an incorrect version number when doing `deno -v`.
+
+- fix(ext/node): alias `shake-128` and `shake-256` hash algorithms (#28451)
+- fix(ext/node): return `Buffer` from crypto cipher APIs (#28826)
+- fix(ext/node): support input option in spawnSync (#28792)
+- fix(ext/node): use primordials in `ext/node/polyfills/path/separator.ts`
+  (#28669)
+- fix(node): add reset method to event loop delay histogram (#28788)
+
 ### 2.1.11 / 2025.04.08
 
 - docs: add examples for SubtleCrypto (#28068)

filename: cli/Cargo.toml
patch: @@ -2,7 +2,7 @@
 
 [package]
 name = "deno"
-version = "2.1.11"
+version = "2.1.12"
 authors.workspace = true
 default-run = "deno"
 edition.workspace = true

filename: cli/lib/version.txt
patch: @@ -1 +1 @@
-2.1.10
\ No newline at end of file
+2.1.12
\ No newline at end of file

filename: cli/rt/Cargo.toml
patch: @@ -2,7 +2,7 @@
 
 [package]
 name = "denort"
-version = "2.1.10"
+version = "2.1.12"
 authors.workspace = true
 default-run = "denort"
 edition.workspace = true
Repository: vercel/next.js
Pull request: Skip alert as well for non-canary e2e deploy

Follow-up to https://github.com/vercel/next.js/pull/81207

Changed files:
filename: .github/workflows/retry_deploy_test.yml
patch: @@ -40,6 +40,7 @@ jobs:
     # Report the failure to Slack if the test-e2e-deploy-release workflow has failed 2 times
     if: >-
       ${{ 
+        github.event.workflow_run.display_title == 'test-e2e-deploy canary' &&
         github.event.workflow_run.conclusion == 'failure' &&
         github.event.workflow_run.run_attempt >= 2 &&
         !github.event.workflow_run.head_repository.fork
Repository: vercel/next.js
Pull request: Fix if condition in retry workflow

Fixes: https://github.com/vercel/next.js/actions/runs/16040442318

Changed files:
filename: .github/workflows/retry_deploy_test.yml
patch: @@ -18,7 +18,7 @@ jobs:
     # Retry the test-e2e-deploy-release workflow up to 2 times
     if: >-
       ${{ 
-        github.event.workflow_run.display_title == 'test-e2e-deploy canary'
+        github.event.workflow_run.display_title == 'test-e2e-deploy canary' &&
         github.event.workflow_run.conclusion == 'failure' &&
         github.repository == 'vercel/next.js' &&
         github.event.workflow_run.run_attempt < 2
Repository: huggingface/transformers
Pull request: remove broken block

# What does this PR do?

Removes an unused (and broken) block in modular model converter. Tested on a few modular conversions, as long as we don't use `return super().<...method...>` it will not cause issues. 



Changed files:
filename: utils/modular_model_converter.py
patch: @@ -365,21 +365,6 @@ def leave_FunctionDef(self, original_node: cst.FunctionDef, updated_node: cst.Fu
             return updated_node.with_changes(body=new_body, params=updated_node.params)
         return updated_node
 
-    def leave_Return(self, original_node: cst.Return, updated_node: cst.Return) -> cst.Return:
-        """ "When a return statement is reached, it is replaced with the unrolled super code"""
-        if m.matches(updated_node.value, m.Call(func=m.Attribute(attr=m.Name("super")))):
-            func_def = self.get_metadata(ParentNodeProvider, original_node)
-            if m.matched(func_def, m.FunctionDef()) and func_def.name.value in self.original_modeling_methods:
-                updated_return_value = updated_node.value.with_changes(
-                    args=[
-                        cst.Arg(
-                            value=cst.Call(func=cst.Name("super"), args=[cst.Arg(value=cst.Name(func_def.name.value))])
-                        )
-                    ]
-                )
-                return updated_node.with_changes(value=updated_return_value)
-        return updated_node
-
 
 def find_all_dependencies(
     dependency_mapping: dict[str, set],
Repository: nodejs/node
Pull request: doc: add gurgunday as triager

I would like to apply for the role of triager.

After Fastify, [I started regularly contributing to Node.js a few months ago](https://github.com/nodejs/node/pulls?q=is%3Apr+author%3Agurgunday), and I have no intention of slowing down! I love the Node.js project, its community structure, and pretty much everything else about it. I'd love to help as much as possible and be a part of this awesome project! Like I said, I already have a bunch of merged PRs and I've been occasionally commenting on other people's issues to help them for a while. I believe this is a natural next step for me.

I hereby declare that I have read and understood the Code of Conduct of the project and will adhere to that.

Changed files:
filename: README.md
patch: @@ -751,6 +751,8 @@ maintaining the Node.js project.
   **Feng Yu** <<F3n67u@outlook.com>> (he/him)
 * [gireeshpunathil](https://github.com/gireeshpunathil) -
   **Gireesh Punathil** <<gpunathi@in.ibm.com>> (he/him)
+* [gurgunday](https://github.com/gurgunday) -
+  **Gürgün Dayıoğlu** <<hey@gurgun.day>>
 * [iam-frankqiu](https://github.com/iam-frankqiu) -
   **Frank Qiu** <<iam.frankqiu@gmail.com>> (he/him)
 * [KevinEady](https://github.com/KevinEady) -
Repository: denoland/deno
Pull request: fix(task): support backticks and basic tilde expansion

* https://github.com/denoland/deno_task_shell/pull/147
* https://github.com/denoland/deno_task_shell/pull/146

Closes https://github.com/denoland/deno/issues/26676
Closes https://github.com/denoland/deno/issues/28807

Changed files:
filename: Cargo.lock
patch: @@ -2633,9 +2633,9 @@ dependencies = [
 
 [[package]]
 name = "deno_task_shell"
-version = "0.22.0"
+version = "0.23.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "126e6062adfcc544f0937d610d23dc4dc70c4d2aab8636b31a93bcb26177115d"
+checksum = "cdd929be1ec5a465cb8991d06098a484901a4fe4024d38f3871ada42bd304f7f"
 dependencies = [
  "anyhow",
  "deno_path_util",
@@ -8316,9 +8316,9 @@ dependencies = [
 
 [[package]]
 name = "sys_traits"
-version = "0.1.8"
+version = "0.1.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "638f0e61b5134e56b2abdf4c704fd44672603f15ca09013f314649056f3fee4d"
+checksum = "f3374191d43a934854e99a46cd47f8124369e690353e0f8db42769218d083690"
 dependencies = [
  "filetime",
  "getrandom",

filename: Cargo.toml
patch: @@ -66,7 +66,7 @@ deno_npm = "=0.31.0"
 deno_package_json = { version = "=0.6.0", default-features = false }
 deno_path_util = "=0.3.2"
 deno_semver = "=0.7.1"
-deno_task_shell = "=0.22.0"
+deno_task_shell = "=0.23.0"
 deno_terminal = "=0.2.2"
 deno_unsync = "0.4.2"
 deno_whoami = "0.1.0"
@@ -230,7 +230,7 @@ simd-json = "0.14.0"
 slab = "0.4"
 smallvec = "1.8"
 socket2 = { version = "0.5.3", features = ["all"] }
-sys_traits = "=0.1.8"
+sys_traits = "=0.1.9"
 tar = "=0.4.43"
 tempfile = "3.4.0"
 termcolor = "1.1.3"
Repository: electron/electron
Pull request: build: make sure there is at least 35GB free for source cache

Backport of #45501

See that PR for details.


Notes: <!-- Please add a one-line description for app developers to read in the release notes, or 'none' if no notes relevant to app developers. Examples and help on special cases: https://github.com/electron/clerk/blob/main/README.md#examples -->none


Changed files:
filename: .github/actions/checkout/action.yml
patch: @@ -73,10 +73,10 @@ runs:
     if: steps.check-cache.outputs.cache_exists == 'false' && inputs.use-cache  == 'true'
     shell: bash
     run: |    
-      # if there is less than 20 GB free space then creating the cache might fail so exit early
+      # if there is less than 35 GB free space then creating the cache might fail so exit early
       freespace=`df -m /mnt/cross-instance-cache | grep -w /mnt/cross-instance-cache | awk '{print $4}'`
       freespace_human=`df -h /mnt/cross-instance-cache | grep -w /mnt/cross-instance-cache | awk '{print $4}'`
-      if [ $freespace -le 20000 ]; then
+      if [ $freespace -le 35000 ]; then
         echo "The cross mount cache has $freespace_human free space which is not enough - exiting"
         exit 1
       else
Repository: nodejs/node
Pull request: build: define python when generating `out/Makefile`

Ref: #48462

Equal to https://github.com/nodejs/node/blob/d74c4987351252f39c18305dd53dbf047639017f/configure.py#L2363-L2372

When `out/Makefile` is generated during `./configure`, `-Dpython=` is passed to GYP, however, when it's generated from the Makefile, it is not passed. This can lead to an undefined variable python on some systems.

Changed files:
filename: Makefile
patch: @@ -175,7 +175,7 @@ out/Makefile: config.gypi common.gypi node.gyp \
 	tools/v8_gypfiles/toolchain.gypi \
 	tools/v8_gypfiles/features.gypi \
 	tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
-	$(PYTHON) tools/gyp_node.py -f make
+	$(PYTHON) tools/gyp_node.py -f make -Dpython=$(PYTHON)
 
 # node_version.h is listed because the N-API version is taken from there
 # and included in config.gypi
Repository: denoland/deno
Pull request: fix(ext/canvas): handle integer overflow in `createImageBitmap`

fixes https://github.com/denoland/deno/issues/28732


Changed files:
filename: ext/canvas/image_ops.rs
patch: @@ -145,13 +145,22 @@ impl<T: Primitive + SaturatingMul + Ord> UnpremultiplyAlpha for Rgba<T> {
     let alpha_index = pixel.len() - 1;
     let alpha = pixel[alpha_index];
 
+    // avoid to divide by zero
+    if alpha.to_f32().unwrap() == 0.0 {
+      return Rgba([pixel[0], pixel[1], pixel[2], pixel[alpha_index]]);
+    }
+
     for rgb in pixel.iter_mut().take(alpha_index) {
-      *rgb = NumCast::from(
-        (rgb.to_f32().unwrap()
-          / (alpha.to_f32().unwrap() / max_t.to_f32().unwrap()))
-        .round(),
-      )
-      .unwrap();
+      let unchecked_value = (rgb.to_f32().unwrap()
+        / (alpha.to_f32().unwrap() / max_t.to_f32().unwrap()))
+      .round();
+      let checked_value = if unchecked_value > max_t.to_f32().unwrap() {
+        max_t.to_f32().unwrap()
+      } else {
+        unchecked_value
+      };
+
+      *rgb = NumCast::from(checked_value).unwrap();
     }
 
     Rgba([pixel[0], pixel[1], pixel[2], pixel[alpha_index]])
@@ -176,13 +185,22 @@ impl<T: Primitive + SaturatingMul + Ord> UnpremultiplyAlpha for LumaA<T> {
     let alpha_index = pixel.len() - 1;
     let alpha = pixel[alpha_index];
 
+    // avoid to divide by zero
+    if alpha.to_f32().unwrap() == 0.0 {
+      return LumaA([pixel[0], pixel[alpha_index]]);
+    }
+
     for rgb in pixel.iter_mut().take(alpha_index) {
-      *rgb = NumCast::from(
-        (rgb.to_f32().unwrap()
-          / (alpha.to_f32().unwrap() / max_t.to_f32().unwrap()))
-        .round(),
-      )
-      .unwrap();
+      let unchecked_value = (rgb.to_f32().unwrap()
+        / (alpha.to_f32().unwrap() / max_t.to_f32().unwrap()))
+      .round();
+      let checked_value = if unchecked_value > max_t.to_f32().unwrap() {
+        max_t.to_f32().unwrap()
+      } else {
+        unchecked_value
+      };
+
+      *rgb = NumCast::from(checked_value).unwrap();
     }
 
     LumaA([pixel[0], pixel[alpha_index]])
@@ -590,6 +608,15 @@ mod tests {
     let rgba = Rgba::<u8>([127, 0, 0, 127]);
     let rgba = rgba.unpremultiply_alpha();
     assert_eq!(rgba, Rgba::<u8>([255, 0, 0, 127]));
+
+    // https://github.com/denoland/deno/issues/28732
+    let rgba = Rgba::<u8>([247, 0, 0, 233]);
+    let rgba = rgba.unpremultiply_alpha();
+    assert_eq!(rgba, Rgba::<u8>([255, 0, 0, 233]));
+
+    let rgba = Rgba::<u8>([255, 0, 0, 0]);
+    let rgba = rgba.unpremultiply_alpha();
+    assert_eq!(rgba, Rgba::<u8>([255, 0, 0, 0]));
   }
 
   #[test]