helloadhavan/github_issues huggingface dataset:
Repository: ggml-org/llama.cpp
Pull request: OpenCL: add hs=40 support to FA

Related to https://github.com/ggml-org/llama.cpp/pull/15559 and https://github.com/ggml-org/llama.cpp/pull/15537

I noticed that some of the workgroup sizes I initially chose might not be optimal. I may get back to it later

Changed files:
filename: ggml/src/ggml-opencl/ggml-opencl.cpp
patch: @@ -1339,7 +1339,7 @@ static void load_cl_kernels(ggml_backend_opencl_context *backend_ctx, ggml_cl_ve
 
         if (!kernel_src_f16.empty() && !kernel_src_f32.empty() && !kernel_src_f32_f16.empty()) {
             const struct { int dk; int dv; int bm; int bn; } fa_dims[] = {
-                { 64,  64, 64, 64}, { 80,  80, 64, 32}, { 96,  96, 64, 32},
+                { 40,  40, 32, 32}, { 64,  64, 64, 64}, { 80,  80, 64, 32}, { 96,  96, 64, 32},
                 {112, 112, 32, 32}, {128, 128, 32, 32}, {192, 128, 16, 16},
                 {192, 192, 16, 16}, {256, 256, 16, 16},
             };
@@ -2784,7 +2784,7 @@ static bool ggml_opencl_supports_op(ggml_backend_dev_t dev, const struct ggml_te
                 const int dv = v->ne[0];
 
                 const struct { int dk; int dv; } supported_dims[] = {
-                    { 64,  64}, { 80,  80}, { 96,  96},
+                    { 40,  40}, { 64,  64}, { 80,  80}, { 96,  96},
                     {112, 112}, {128, 128}, {192, 128},
                     {192, 192}, {256, 256},
                 };
Repository: vercel/next.js
Pull request: update: add nebrelbug to labeler.json

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the PR.
- Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to understand the PR)
- When linking to a Slack thread, you might want to share details of the conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Changed files:
filename: .github/labeler.json
patch: @@ -59,6 +59,7 @@
       { "type": "user", "pattern": "ijjk" },
       { "type": "user", "pattern": "lazarv" },
       { "type": "user", "pattern": "lubieowoce" },
+      { "type": "user", "pattern": "nebrelbug" },
       { "type": "user", "pattern": "RobPruzan" },
       { "type": "user", "pattern": "samcx" },
       { "type": "user", "pattern": "sebmarkbage" },
Repository: ggml-org/llama.cpp
Pull request: CANN: fix acl_rstd allocation size in ggml_cann_rms_norm

Fixes #15330

Adjust the allocation size of acl_rstd. The parameter `dims` is set to 3 according to the CANN documentation.

Co-authored-by: Yuchuan <yuchuan-cao@users.noreply.github.com>

Changed files:
filename: ggml/src/ggml-cann/aclnn_ops.cpp
patch: @@ -975,18 +975,19 @@ void ggml_cann_rms_norm(ggml_backend_cann_context& ctx, ggml_tensor* dst) {
     );
 
     // build rstd, zero...
-    size_t acl_rstd_nb[GGML_MAX_DIMS];
+    int64_t acl_rstd_ne[] = {src->ne[1], src->ne[2], src->ne[3]};
+    size_t acl_rstd_nb[GGML_MAX_DIMS - 1];
     acl_rstd_nb[0] = sizeof(float);
-    for (int i = 1; i < GGML_MAX_DIMS; i++) {
-        acl_rstd_nb[i] = acl_rstd_nb[i - 1] * src->ne[i - 1];
+    for (int i = 1; i < GGML_MAX_DIMS - 1; i++) {
+        acl_rstd_nb[i] = acl_rstd_nb[i - 1] * acl_rstd_ne[i - 1];
     }
     aclTensor* acl_rstd = get_f32_cache_acl_tensor(
         ctx,
         &ctx.rms_norm_zero_tensor_cache.cache,
         ctx.rms_norm_zero_tensor_cache.size,
-        src->ne,
+        acl_rstd_ne,
         acl_rstd_nb,
-        GGML_MAX_DIMS,
+        GGML_MAX_DIMS - 1,
         0.0f      // value
     );
Repository: denoland/deno
Pull request: fix(compile): panic when compiled with --no-terminal flag

This works towards fixing #27730 and #21091.

When compiled with the `--no-terminal` flag under windows there are some issues related to stdin, stdout and stderr.
This pull request fixes the panic when during bootstrap the terminal type is requested.
Previously it would return the error if the terminal was not valid, instead it now returns UNKNOWN.

The dummy stdin that is than provided instantly pushes null for some reason.
However this tries to do a `debugLog` which is not possible yet, as we are still initiating.
I don't see the use for this push, so I removed the line.
If it is needed for something please let me know.

This PR does not fully fix the issue yet, as there is a similar problem in deno_core's `isTerminal` op, see this [pull request](https://github.com/denoland/deno_core/pull/1116).

Changed files:
filename: ext/node/ops/util.rs
patch: @@ -18,18 +18,18 @@ enum HandleType {
 }
 
 #[op2(fast)]
-pub fn op_node_guess_handle_type(
-  state: &mut OpState,
-  rid: u32,
-) -> Result<u32, deno_core::error::ResourceError> {
-  let handle = state.resource_table.get_handle(rid)?;
+pub fn op_node_guess_handle_type(state: &mut OpState, rid: u32) -> u32 {
+  let handle = match state.resource_table.get_handle(rid) {
+    Ok(handle) => handle,
+    _ => return HandleType::Unknown as u32,
+  };
 
   let handle_type = match handle {
     ResourceHandle::Fd(handle) => guess_handle_type(handle),
     _ => HandleType::Unknown,
   };
 
-  Ok(handle_type as u32)
+  handle_type as u32
 }
 
 #[cfg(windows)]
Repository: ggml-org/llama.cpp
Pull request: vulkan: fix mmv subgroup16 selection

This fixes a bug in the selection logic for the MMV shader used in k- and iq quants on Nvidia and AMD. It also supercedes #15768.

Changed files:
filename: ggml/src/ggml-vulkan/ggml-vulkan.cpp
patch: @@ -2937,9 +2937,7 @@ static void ggml_vk_load_shaders(vk_device& device) {
 
     const bool use_subgroups = device->subgroup_arithmetic && device->architecture != vk_device_architecture::AMD_GCN;
     // Ensure a subgroup size >= 16 is available
-    const bool use_subgroups16 = use_subgroups &&
-                                    (!device->subgroup_size_control && device->subgroup_size >= 16 ||
-                                    device->subgroup_size_control && device->subgroup_min_size <= 16 && device->subgroup_max_size >= 16);
+    const bool use_subgroups16 = use_subgroups && subgroup_min_size_16;
 
     const uint32_t subgroup_size = (device->vendor_id == VK_VENDOR_ID_INTEL && device->subgroup_size_control && device->subgroup_min_size <= 16 && device->subgroup_max_size >= 16) ? 16 : device->subgroup_size;
     const uint32_t subgroup_size16 = std::max(subgroup_size, 16u);
Repository: vercel/next.js
Pull request: Update Rspack development test manifest

This auto-generated PR updates the development integration test manifest used when testing Rspack.

Changed files:
filename: test/rspack-dev-tests-manifest.json
patch: @@ -440,11 +440,19 @@
   },
   "packages/next/src/build/static-paths/app.test.ts": {
     "passed": [
-      "assignErrorIfEmpty should assign throwOnEmptyStaticShell false for a static route",
-      "assignErrorIfEmpty should assign throwOnEmptyStaticShell to the prerendered routes",
+      "assignErrorIfEmpty should assign throwOnEmptyStaticShell based on route hierarchy",
+      "assignErrorIfEmpty should assign throwOnEmptyStaticShell true for a static route with no children",
+      "assignErrorIfEmpty should handle blog/[slug] not throwing when concrete routes exist (from docs example)",
+      "assignErrorIfEmpty should handle catch-all routes with different fallback parameter counts (from docs example)",
+      "assignErrorIfEmpty should handle empty input",
       "assignErrorIfEmpty should handle more complex routes",
+      "assignErrorIfEmpty should handle multiple routes at the same trie node",
+      "assignErrorIfEmpty should handle nested routes with multiple parameter depths",
+      "assignErrorIfEmpty should handle parameter value collisions",
+      "assignErrorIfEmpty should handle routes at same trie node with different fallback parameter lengths",
       "filterUniqueParams should filter out duplicate parameters",
       "filterUniqueParams should handle more complex routes",
+      "filterUniqueRootParamsCombinations should handle multiple root parameters",
       "filterUniqueRootParamsCombinations should return only the root parameters"
     ],
     "failed": [],
@@ -2901,10 +2909,10 @@
     "runtimeError": false
   },
   "test/development/basic/barrel-optimization/barrel-optimization-mui.test.ts": {
-    "passed": [
+    "passed": [],
+    "failed": [
       "Skipped in Turbopack optimizePackageImports - mui should support MUI"
     ],
-    "failed": [],
     "pending": [],
     "flakey": [],
     "runtimeError": false
@@ -6435,17 +6443,16 @@
     "runtimeError": false
   },
   "test/e2e/app-dir/error-on-next-codemod-comment/error-on-next-codemod-comment.test.ts": {
-    "passed": [
+    "passed": [],
+    "failed": [
       "app-dir - error-on-next-codemod-comment should disappear the error when you replace with bypass comment",
       "app-dir - error-on-next-codemod-comment should disappear the error when you rre the codemod comment",
-      "app-dir - error-on-next-codemod-comment should error with inline comment as well"
-    ],
-    "failed": [
+      "app-dir - error-on-next-codemod-comment should error with inline comment as well",
       "app-dir - error-on-next-codemod-comment should error with swc if you have codemod comments left"
     ],
     "pending": [],
     "flakey": [],
-    "runtimeError": false
+    "runtimeError": true
   },
   "test/e2e/app-dir/errors/index.test.ts": {
     "passed": [
Repository: electron/electron
Pull request: fix: extension web workers net request failing

Backport of #45698

See that PR for details.


Notes: Fixes web worker scripts failing to load for chrome extensions.


Changed files:
filename: shell/browser/electron_browser_client.cc
patch: @@ -1052,6 +1052,12 @@ void ElectronBrowserClient::
   // reason for it, and we could consider supporting it in future.
   protocol_registry->RegisterURLLoaderFactories(factories,
                                                 false /* allow_file_access */);
+#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)
+  factories->emplace(
+      extensions::kExtensionScheme,
+      extensions::CreateExtensionWorkerMainResourceURLLoaderFactory(
+          browser_context));
+#endif
 }
 
 #if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)
Repository: denoland/deno
Pull request: fix(ext/node): use primordials in `ext/node/polyfills/internal/options.ts`

Towards #24236. This PR replaces `Map` and `String` methods with their primordial versions.

<!--
Before submitting a PR, please read https://docs.deno.com/runtime/manual/references/contributing

1. Give the PR a descriptive title.

  Examples of good title:
    - fix(std/http): Fix race condition in server
    - docs(console): Update docstrings
    - feat(doc): Handle nested reexports

  Examples of bad title:
    - fix #7123
    - update docs
    - fix bugs

2. Ensure there is a related issue and it is referenced in the PR text.
3. Ensure there are tests that cover the changes.
4. Ensure `cargo test` passes.
5. Ensure `./tools/format.js` passes without changing files.
6. Ensure `./tools/lint.js` passes.
7. Open as a draft PR if your work is still in progress. The CI won't run
   all steps, but you can add '[ci]' to a commit message to force it to.
8. If you would like to run the benchmarks on the CI, add the 'ci-bench' label.
-->


Changed files:
filename: ext/node/polyfills/internal/options.ts
patch: @@ -20,10 +20,13 @@
 // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
 // USE OR OTHER DEALINGS IN THE SOFTWARE.
 
-// TODO(petamoriken): enable prefer-primordials for node polyfills
-// deno-lint-ignore-file prefer-primordials
-
 import { getOptions } from "ext:deno_node/internal_binding/node_options.ts";
+import { primordials } from "ext:core/mod.js";
+const {
+  MapPrototypeGet,
+  StringPrototypeSlice,
+  StringPrototypeStartsWith,
+} = primordials;
 
 let optionsMap: Map<string, { value: string }>;
 
@@ -38,11 +41,14 @@ function getOptionsFromBinding() {
 export function getOptionValue(optionName: string) {
   const options = getOptionsFromBinding();
 
-  if (optionName.startsWith("--no-")) {
-    const option = options.get("--" + optionName.slice(5));
+  if (StringPrototypeStartsWith(optionName, "--no-")) {
+    const option = MapPrototypeGet(
+      options,
+      "--" + StringPrototypeSlice(optionName, 5),
+    );
 
     return option && !option.value;
   }
 
-  return options.get(optionName)?.value;
+  return MapPrototypeGet(options, optionName)?.value;
 }
Repository: ggml-org/llama.cpp
Pull request: sampling : optimize dist sampler

cont #15665 

When the dist sampler runs on the full vocabulary (e.g. `top-p = 1, top-k = 0, min-p = 0`), the sampling time can have a non-negligible effect. This PR fuses the probability normalization loop with the inverse transform sampling.

On M2 Ultra, the tg with `gpt-oss-120b` goes from ~70t/s -> 78t/s at empty context.

Changed files:
filename: src/llama-sampling.cpp
patch: @@ -604,10 +604,73 @@ static const char * llama_sampler_dist_name(const struct llama_sampler * /*smpl*
 static void llama_sampler_dist_apply(struct llama_sampler * smpl, llama_token_data_array * cur_p) {
     auto * ctx = (llama_sampler_dist *) smpl->ctx;
 
-    // sorting is not necessary here
-    llama_sampler_softmax_impl(cur_p, false);
+    // edge cases
+    if (cur_p->size == 0) {
+        cur_p->selected = -1;
+        return;
+    }
+
+    cur_p->selected = 0;
+
+    if (cur_p->size == 1) {
+        cur_p->data[0].p = 1.0f;
+        return;
+    }
+
+    // max logit for numerical stability
+    float max_l = cur_p->data[0].logit;
+    if (!cur_p->sorted) {
+        for (size_t i = 1; i < cur_p->size; ++i) {
+            max_l = std::max(max_l, cur_p->data[i].logit);
+        }
+    }
+
+    // apply softmax to obtain the probabilities
+    double sum_cum = 0.0f;
+    for (size_t i = 0; i < cur_p->size; ++i) {
+        float p = expf(cur_p->data[i].logit - max_l);
+        cur_p->data[i].p = p;
+        sum_cum += p;
+    }
+
+#if 1
+    // sample from the obtained probabilities and normalize the probs in a single pass
+    // this is ~3x faster on Mac with full gpt-oss vocab than the version below
+    //
+    std::uniform_real_distribution<double> dist(0.0f, 1.0f);
+    const double rnd = dist(ctx->rng);
+
+          double sum_run = 0.0f;
+    const double sum_tgt = sum_cum*rnd;
+
+    bool found = false;
+    for (size_t i = 0; i < cur_p->size; ++i) {
+        if (!found) {
+            // accumulate probs until we reach the target sum
+            sum_run += cur_p->data[i].p;
+            if (sum_run >= sum_tgt) {
+                cur_p->selected = i;
+                found = true;
+            }
+        }
+
+        // normalize probs
+        cur_p->data[i].p /= sum_cum;
+    }
+
+    // fallback to the last token (don't think this can happen)
+    assert(found);
+    if (!found) {
+        cur_p->selected = cur_p->size - 1;
+    }
+#else
+    // for clarity, this is the same as above but does one pass for normalization and one extra pass for sampling
+    for (size_t i = 0; i < cur_p->size; ++i) {
+        cur_p->data[i].p /= sum_cum;
+    }
 
     cur_p->selected = llama_sample_dist(cur_p, ctx->rng);
+#endif
 }
 
 static struct llama_sampler * llama_sampler_dist_clone(const struct llama_sampler * smpl) {
Repository: facebook/react
Pull request: [churn] remove Node 19 from dev engines, add 21

This allows running `yarn` with Node 21 installed, also removes Node 19 which is no longer supported according to https://nodejs.org/en/about/previous-releases


Changed files:
filename: package.json
patch: @@ -99,7 +99,7 @@
     "yargs": "^15.3.1"
   },
   "devEngines": {
-    "node": "16.x || 18.x || 19.x || 20.x"
+    "node": "16.x || 18.x || 20.x || 21.x"
   },
   "jest": {
     "testRegex": "/scripts/jest/dont-run-jest-directly\\.js$"
Repository: denoland/deno
Pull request: fix(ext/node): use primordials in `ext/node/polyfills/internal/http.ts`

Towards #24236. This PR replaces `Date`, `Date` methods, and `Symbol`s with their primordial versions. 

<!--
Before submitting a PR, please read https://docs.deno.com/runtime/manual/references/contributing

1. Give the PR a descriptive title.

  Examples of good title:
    - fix(std/http): Fix race condition in server
    - docs(console): Update docstrings
    - feat(doc): Handle nested reexports

  Examples of bad title:
    - fix #7123
    - update docs
    - fix bugs

2. Ensure there is a related issue and it is referenced in the PR text.
3. Ensure there are tests that cover the changes.
4. Ensure `cargo test` passes.
5. Ensure `./tools/format.js` passes without changing files.
6. Ensure `./tools/lint.js` passes.
7. Open as a draft PR if your work is still in progress. The CI won't run
   all steps, but you can add '[ci]' to a commit message to force it to.
8. If you would like to run the benchmarks on the CI, add the 'ci-bench' label.
-->


Changed files:
filename: ext/node/polyfills/internal/http.ts
patch: @@ -1,11 +1,15 @@
 // Copyright 2018-2025 the Deno authors. MIT license.
 // Copyright Joyent and Node contributors. All rights reserved. MIT license.
 
-// TODO(petamoriken): enable prefer-primordials for node polyfills
-// deno-lint-ignore-file prefer-primordials
-
 import { setUnrefTimeout } from "node:timers";
 import { notImplemented } from "ext:deno_node/_utils.ts";
+import { primordials } from "ext:core/mod.js";
+const {
+  Date,
+  DatePrototypeToUTCString,
+  DatePrototypeGetMilliseconds,
+  Symbol,
+} = primordials;
 
 let utcCache: string | undefined;
 
@@ -16,8 +20,8 @@ export function utcDate() {
 
 function cache() {
   const d = new Date();
-  utcCache = d.toUTCString();
-  setUnrefTimeout(resetCache, 1000 - d.getMilliseconds());
+  utcCache = DatePrototypeToUTCString(d);
+  setUnrefTimeout(resetCache, 1000 - DatePrototypeGetMilliseconds(d));
 }
 
 function resetCache() {
Repository: denoland/deno
Pull request: perf(npm): deserialize cached npm packuments on blocking task

Noticed we missed doing this when looking through this code.

```sh
> cat package.json
{
  "dependencies": {
    "dax-sh": "^0.43.0",
    "next": "^15.3.1",
    "ts-morph": "^25.0.1"
  }
}
> hyperfine --warmup=1 "V:\deno\target\release\deno_main.exe install --no-lock" "V:\deno\target\release\deno.exe install --no-lock"                                
Benchmark 1: V:\deno\target\release\deno_main.exe install --no-lock
  Time (mean ± σ):     198.5 ms ±   3.2 ms    [User: 166.8 ms, System: 38.6 ms]                                                                                                                                                                                                                             
  Range (min … max):   192.7 ms … 203.3 ms    14 runs

Benchmark 2: V:\deno\target\release\deno.exe install --no-lock
  Time (mean ± σ):     146.4 ms ±   2.4 ms    [User: 178.7 ms, System: 133.0 ms]
  Range (min … max):   142.0 ms … 150.0 ms    19 runs

Summary
  V:\deno\target\release\deno.exe install --no-lock ran
    1.36 ± 0.03 times faster than V:\deno\target\release\deno_main.exe install --no-lock
```

Changed files:
filename: resolvers/npm_cache/lib.rs
patch: @@ -308,7 +308,7 @@ impl<
       })
   }
 
-  pub fn load_package_info(
+  pub async fn load_package_info(
     &self,
     name: &str,
   ) -> Result<Option<SerializedCachedPackageInfo>, serde_json::Error> {
@@ -320,8 +320,9 @@ impl<
       Err(err) => return Err(serde_json::Error::io(err)),
     };
 
-    // todo(dsherret): deserialize in a blocking task
-    serde_json::from_slice(&file_bytes)
+    deno_unsync::spawn_blocking(move || serde_json::from_slice(&file_bytes))
+      .await
+      .unwrap()
   }
 
   pub fn save_package_info(

filename: resolvers/npm_cache/registry_info.rs
patch: @@ -347,13 +347,13 @@ impl<
         || downloader.previously_loaded_packages.lock().contains(&name)
       {
         // attempt to load from the file cache
-        if let Some(cached_info) = downloader.cache.load_package_info(&name).map_err(JsErrorBox::from_err)? {
+        if let Some(cached_info) = downloader.cache.load_package_info(&name).await.map_err(JsErrorBox::from_err)? {
           return Ok(FutureResult::SavedFsCache(Arc::new(cached_info.info)));
         } else {
           None
         }
       } else {
-        downloader.cache.load_package_info(&name).ok().flatten()
+        downloader.cache.load_package_info(&name).await.ok().flatten()
       };
 
       if *downloader.cache.cache_setting() == NpmCacheSetting::Only {