helloadhavan/github_issues huggingface dataset:
Repository: vercel/next.js
Pull request: fix(next/legacy/image): add deployment id (dpl) query string support

## What?

Add deployment ID (`?dpl`) query string support to `next/legacy/image`.

## Why?

The shared `image-loader.ts` (used by `next/image`) already extracts and appends the `?dpl` deployment ID to optimized image URLs. The legacy image component (`next/legacy/image`) has its own inline `defaultLoader` that was missing this handling, causing inconsistent behavior between the two components.

## How?

Ported the `?dpl` deployment ID logic from `image-loader.ts` to the legacy component's `defaultLoader`:

1. Import `getDeploymentId` from the shared deployment-id module
2. Extract `?dpl` from the src URL before validation (to avoid false positives on query string checks)
3. Append `&dpl=<deploymentId>` to the optimized image URL for local images

Changed files:
filename: packages/next/src/client/legacy/image.tsx
patch: @@ -24,6 +24,7 @@ import { ImageConfigContext } from '../../shared/lib/image-config-context.shared
 import { warnOnce } from '../../shared/lib/utils/warn-once'
 import { normalizePathTrailingSlash } from '../normalize-trailing-slash'
 import { findClosestQuality } from '../../shared/lib/find-closest-quality'
+import { getDeploymentId } from '../../shared/lib/deployment-id'
 
 function normalizeSrc(src: string): string {
   return src[0] === '/' ? src.slice(1) : src
@@ -126,6 +127,19 @@ function defaultLoader({
     return src
   }
 
+  // Extract dpl parameter early so validation uses the clean URL
+  let deploymentId = getDeploymentId()
+  if (src.startsWith('/')) {
+    const srcUrl = new URL(src, 'http://n')
+    const srcDpl = srcUrl.searchParams.get('dpl')
+    if (srcDpl) {
+      deploymentId = srcDpl
+      // Remove the dpl parameter from the src URL to avoid duplication
+      srcUrl.searchParams.delete('dpl')
+      src = srcUrl.href.slice('http://n'.length)
+    }
+  }
+
   if (
     src.startsWith('/') &&
     src.includes('?') &&
@@ -213,7 +227,9 @@ function defaultLoader({
 
   return `${normalizePathTrailingSlash(config.path)}?url=${encodeURIComponent(
     src
-  )}&w=${width}&q=${q}`
+  )}&w=${width}&q=${q}${
+    src.startsWith('/') && deploymentId ? `&dpl=${deploymentId}` : ''
+  }`
 }
 
 const loaders = new Map<
Repository: electron/electron
Pull request: fix: deliver Universal Links when NSUserActivity.userInfo is nil

Backport of #49986

See that PR for details.


Notes: Fixed an issue on macOS where Universal Links were not delivered to `app.on('continue-activity')` on cold launch when `NSUserActivity.userInfo` was nil.

Changed files:
filename: shell/browser/mac/electron_application_delegate.mm
patch: @@ -143,14 +143,12 @@ - (BOOL)application:(NSApplication*)sender
   std::string activity_type(base::SysNSStringToUTF8(userActivity.activityType));
   NSURL* url = userActivity.webpageURL;
   NSDictionary* details = url ? @{@"webpageURL" : url.absoluteString} : @{};
-  if (!userActivity.userInfo)
-    return NO;
+  NSDictionary* user_info = userActivity.userInfo ?: @{};
 
   electron::Browser* browser = electron::Browser::Get();
-  return browser->ContinueUserActivity(
-             activity_type,
-             electron::NSDictionaryToValue(userActivity.userInfo),
-             electron::NSDictionaryToValue(details))
+  return browser->ContinueUserActivity(activity_type,
+                                       electron::NSDictionaryToValue(user_info),
+                                       electron::NSDictionaryToValue(details))
              ? YES
              : NO;
 }
Repository: nodejs/node
Pull request: build: `generate_config_gypi.py` generates valid JSON

Refs https://github.com/nodejs/node/pull/60794

`generate_config_gypi.py` needs to generate valid JSON and didn't.
<!--
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/generate_config_gypi.py
patch: @@ -58,7 +58,7 @@ def translate_config(out_dir, config, v8_config):
       'llvm_version': 13,
       'napi_build_version': config['napi_build_version'],
       'node_builtin_shareable_builtins':
-          eval(config['node_builtin_shareable_builtins']),
+          json.loads(config['node_builtin_shareable_builtins']),
       'node_module_version': int(config['node_module_version']),
       'node_use_openssl': config['node_use_openssl'],
       'node_use_amaro': config['node_use_amaro'],
@@ -102,7 +102,8 @@ def main():
 
   # Write output.
   with open(args.target, 'w') as f:
-    f.write(repr(translate_config(args.out_dir, config, v8_config)))
+    f.write(json.dumps(translate_config(args.out_dir, config, v8_config),
+                       sort_keys=True))
 
   # Write depfile. Force regenerating config.gypi when GN configs change.
   if args.dep_file:
Repository: facebook/react
Pull request: [ci] Document that full git shas are required for manual prereleases

Triggering the "(Runtime) Publish Prereleases Manual" workflow with a short git sha doesn't work. It needs the full sha. We might be able to make it work with the short sha as well, but for now we can at least document the restriction.

Changed files:
filename: scripts/release/README.md
patch: @@ -37,7 +37,7 @@ The high level process of creating releases is [documented below](#process). Ind
 If your code lands in the main branch, it will be automatically published to the prerelease channels within the next weekday. However, if you want to immediately publish a prerelease, you can trigger the job to run immediately via the GitHub UI:
 
 1. Wait for the commit you want to release to finish its [(Runtime) Build and Test workflow](https://github.com/facebook/react/actions/workflows/runtime_build_and_test.yml), as the prerelease script needs to download the build from that workflow.
-2. Copy the git sha of whichever commit you are trying to release
+2. Copy the full git sha of whichever commit you are trying to release
 3. Go to https://github.com/facebook/react/actions/workflows/runtime_prereleases_manual.yml
 4. Paste the git sha into the "Run workflow" dropdown
 5. Let the job finish and it will be released on npm
Repository: ollama/ollama
Pull request: openai: remove reasoning as an api.Options

it's not an api.Options so setting it produces a warn log. this does not remove reasoning_effort or reasoning

time=2025-08-20T11:43:36.781-07:00 level=WARN source=types.go:647 msg="invalid option provided" option=reasoning

Changed files:
filename: openai/openai.go
patch: @@ -557,12 +557,10 @@ func fromChatRequest(r ChatCompletionRequest) (*api.ChatRequest, error) {
 
 	var think *api.ThinkValue
 	if r.Reasoning != nil {
-		options["reasoning"] = *r.Reasoning.Effort
 		think = &api.ThinkValue{
 			Value: *r.Reasoning.Effort,
 		}
 	} else if r.ReasoningEffort != nil {
-		options["reasoning"] = *r.ReasoningEffort
 		think = &api.ThinkValue{
 			Value: *r.ReasoningEffort,
 		}
Repository: vercel/next.js
Pull request: next-stats-action: avoid pnpm EXDEV during stats installs

## Summary
- fix flaky `pnpm install` failures in the stats action caused by cross-device hardlinking (`ERR_PNPM_EXDEV`)
- force `pnpm` to use `--package-import-method=copy` for installs run in temp repos
- apply the same setting in both install paths used by the stats workflow

x-ref: https://github.com/vercel/next.js/actions/runs/22110883672/job/63906643545

Changed files:
filename: .github/actions/next-stats-action/src/index.js
patch: @@ -117,7 +117,9 @@ if (!allowedActions.has(actionInfo.actionName) && !actionInfo.isRelease) {
               usePnpm
                 ? // --no-frozen-lockfile is used here to tolerate lockfile
                   // changes from merging latest changes
-                  ` && pnpm install --no-frozen-lockfile`
+                  // --package-import-method=copy avoids EXDEV hardlink failures
+                  // on self-hosted runners where pnpm store/workdirs cross devices.
+                  ` && pnpm install --no-frozen-lockfile --package-import-method=copy`
                 : ' && yarn install --network-timeout 1000000'
             }`,
             { env: { PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: '1' } }

filename: .github/actions/next-stats-action/src/run/index.js
patch: @@ -296,7 +296,7 @@ async function linkPkgs(pkgDir = '', pkgPaths) {
   await fs.writeFile(pkgJsonPath, JSON.stringify(pkgData, null, 2), 'utf8')
 
   await exec(
-    `cd ${pkgDir} && pnpm install --strict-peer-dependencies=false`,
+    `cd ${pkgDir} && pnpm install --strict-peer-dependencies=false --package-import-method=copy`,
     false
   )
 }
Repository: huggingface/transformers
Pull request: Fix early image processor return not raising error

Some of our image processors have a fast return for images that are already square. However, this fast return skips the `background_color` check, which causes flaky test failures because the `test_padding` test uses `self.assertRaises()` to check for that error.

This PR does the check first, ensuring that the right error is raised even when images are square!

Sample error log: https://app.circleci.com/pipelines/github/huggingface/transformers/164053/workflows/a8cc5920-b834-4c5f-bc26-e5fd420c9e18/jobs/2161839

Changed files:
filename: tests/models/llava/test_image_processing_llava.py
patch: @@ -225,6 +225,11 @@ def pad_to_square_original(
                 np.testing.assert_allclose(padded_image, padded_image_original)
 
             # background color length should match channel length
+            if image_inputs[0].shape[0] == image_inputs[0].shape[1]:
+                # This avoids a source of test flakiness - if the image is already square
+                # no padding is done and background colour is not checked.
+                return
+
             with self.assertRaises(ValueError):
                 padded_image = image_processor.pad_to_square(image_inputs[0], background_color=(122, 104))
Repository: ggml-org/llama.cpp
Pull request: CUDA: Fix CUB's argsort when nrows % block_size == 0 CCCL < 3.1

## Overview

We wrongly calculated offset_grid as `ceildiv(nrows, block_size)`, while it must be `ceildiv(nrows + 1, block_size)`. As a consequence, we had uninitialized values in `offset_iterator[nrows]` for the case when `nrows % block_size == 0`.

This bug affected CCCL < 3.1 only, as newer CCCL versions take the strided_iterator path 

## Additional information

Fixes #21162

# Requirements

<!-- IMPORTANT: Please do NOT delete this section, otherwise your PR may be rejected -->

- I have read and agree with the [contributing guidelines](https://github.com/ggml-org/llama.cpp/blob/master/CONTRIBUTING.md)
- AI usage disclosure: Yes, to ask some clarifying questions during implementation.

Changed files:
filename: ggml/src/ggml-cuda/argsort.cu
patch: @@ -47,9 +47,11 @@ void argsort_f32_i32_cuda_cub(ggml_cuda_pool & pool,
 #ifdef STRIDED_ITERATOR_AVAILABLE
     auto offset_iterator = cuda::make_strided_iterator(cuda::make_counting_iterator(0), ncols);
 #else
-    ggml_cuda_pool_alloc<int> offsets_alloc(pool, nrows + 1);
+    // offset_iterator needs to populate nrows + 1 elements, so we also have to ceildiv nrows + 1 by block_size
+    const int                 nrows_offset = nrows + 1;
+    ggml_cuda_pool_alloc<int> offsets_alloc(pool, nrows_offset);
     int *                     offset_iterator = offsets_alloc.get();
-    const dim3                offset_grid((nrows + block_size - 1) / block_size);
+    const dim3                offset_grid((nrows_offset + block_size - 1) / block_size);
     init_offsets<<<offset_grid, block_size, 0, stream>>>(offset_iterator, ncols, nrows);
 #endif
     CUDA_CHECK(cudaMemcpyAsync(temp_keys, x, ncols * nrows * sizeof(float), cudaMemcpyDeviceToDevice, stream));

filename: tests/test-backend-ops.cpp
patch: @@ -8424,6 +8424,7 @@ static std::vector<std::unique_ptr<test_case>> make_test_cases_eval() {
         test_cases.emplace_back(new test_argsort(GGML_TYPE_F32, {1023, 2, 1, 3}, order));
         test_cases.emplace_back(new test_argsort(GGML_TYPE_F32, {1024, 2, 1, 3}, order));
         test_cases.emplace_back(new test_argsort(GGML_TYPE_F32, {1025, 2, 1, 3}, order));
+        test_cases.emplace_back(new test_argsort(GGML_TYPE_F32, {1025, 256, 1, 1}, order)); // test ceildiv in CUDA's CUB's DeviceSegmentedSort
         test_cases.emplace_back(new test_argsort(GGML_TYPE_F32, {2047, 2, 1, 3}, order));
         test_cases.emplace_back(new test_argsort(GGML_TYPE_F32, {2048, 2, 1, 3}, order));
         test_cases.emplace_back(new test_argsort(GGML_TYPE_F32, {2049, 2, 1, 3}, order));
Repository: rust-lang/rust
Pull request: move `tests/ui/invalid` tests to new folders

Just some renaming of tests to remove another vague directory.

r? @Kivooeo 

Changed files:
filename: src/tools/tidy/src/issues.txt
patch: @@ -1358,7 +1358,6 @@ ui/infinite/issue-41731-infinite-macro-print.rs
 ui/infinite/issue-41731-infinite-macro-println.rs
 ui/intrinsics/issue-28575.rs
 ui/intrinsics/issue-84297-reifying-copy.rs
-ui/invalid/issue-114435-layout-type-err.rs
 ui/iterators/issue-28098.rs
 ui/iterators/issue-58952-filter-type-length.rs
 ui/lang-items/issue-83471.rs

filename: tests/ui/README.md
patch: @@ -756,12 +756,6 @@ Tests for rustc-internal lints.
 
 Tests for the `{std,core}::intrinsics`, internal implementation detail.
 
-## `tests/ui/invalid/`
-
-Various tests related to rejecting invalid inputs.
-
-**FIXME**: This is rather uninformative, possibly rehome into more meaningful directories.
-
 ## `tests/ui/io-checks/`: Input Output
 
 Tests for I/O related behaviour, covering stdout/stderr handling and error propagation.

filename: tests/ui/invalid/foo.natvis.xml
patch: @@ -1 +0,0 @@
-<!-- empty -->
Repository: electron/electron
Pull request: fix: deliver Universal Links when NSUserActivity.userInfo is nil

Closes #49985

#### Description of Change

Fixes an issue where Universal Links (`NSUserActivityTypeBrowsingWeb`) were not delivered to JavaScript on macOS cold launch when `NSUserActivity.userInfo` was `nil`.

Electron previously returned early in `application:continueUserActivity:restorationHandler:` if `userActivity.userInfo` was `nil`. For Universal Links, the URL payload is provided via `userActivity.webpageURL`, and `userInfo` is optional per Apple’s API:

- `NSUserActivity.userInfo` (optional):  
  https://developer.apple.com/documentation/foundation/nsuseractivity/userinfo
- `NSUserActivity.webpageURL`:  
  https://developer.apple.com/documentation/foundation/nsuseractivity/webpageurl

This change treats a missing `userInfo` as an empty dictionary and forwards the activity to `Browser::ContinueUserActivity`, ensuring `details.webpageURL` is delivered to `app.on('continue-activity')` on cold launch.

Existing behavior is preserved for activities that include `userInfo`.

#### Checklist

- [x] PR description included
- [ ] I have built and tested this PR
- [x] `npm test` passes
- [x] tests are changed or added
- [x] relevant API documentation, tutorials, and examples are updated and follow the documentation style guide
- [x] PR release notes describe the change in a way relevant to app developers, and are capitalized, punctuated, and past tense.

#### Release Notes

Notes: Fixed an issue on macOS where Universal Links were not delivered to `app.on('continue-activity')` on cold launch when `NSUserActivity.userInfo` was nil.

Changed files:
filename: shell/browser/mac/electron_application_delegate.mm
patch: @@ -143,14 +143,12 @@ - (BOOL)application:(NSApplication*)sender
   std::string activity_type(base::SysNSStringToUTF8(userActivity.activityType));
   NSURL* url = userActivity.webpageURL;
   NSDictionary* details = url ? @{@"webpageURL" : url.absoluteString} : @{};
-  if (!userActivity.userInfo)
-    return NO;
+  NSDictionary* user_info = userActivity.userInfo ?: @{};
 
   electron::Browser* browser = electron::Browser::Get();
-  return browser->ContinueUserActivity(
-             activity_type,
-             electron::NSDictionaryToValue(userActivity.userInfo),
-             electron::NSDictionaryToValue(details))
+  return browser->ContinueUserActivity(activity_type,
+                                       electron::NSDictionaryToValue(user_info),
+                                       electron::NSDictionaryToValue(details))
              ? YES
              : NO;
 }
Repository: electron/electron
Pull request: build: authenticate curl requests to googlesource in lint workflow

Backport of #50001

See that PR for details.


Notes: none

Changed files:
filename: .github/workflows/pipeline-electron-lint.yml
patch: @@ -46,7 +46,7 @@ jobs:
       shell: bash
       run: |
         chromium_revision="$(grep -A1 chromium_version src/electron/DEPS | tr -d '\n' | cut -d\' -f4)"
-        gn_version="$(curl -sL "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/DEPS?format=TEXT" | base64 -d | grep gn_version | head -n1 | cut -d\' -f4)"
+        gn_version="$(curl -sL -b ~/.gitcookies "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/DEPS?format=TEXT" | base64 -d | grep gn_version | head -n1 | cut -d\' -f4)"
 
         cipd ensure -ensure-file - -root . <<-CIPD
         \$ServiceURL https://chrome-infra-packages.appspot.com/
@@ -62,7 +62,7 @@ jobs:
         chromium_revision="$(grep -A1 chromium_version src/electron/DEPS | tr -d '\n' | cut -d\' -f4)"
 
         mkdir -p src/buildtools
-        curl -sL "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/buildtools/DEPS?format=TEXT" | base64 -d > src/buildtools/DEPS
+        curl -sL -b ~/.gitcookies "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/buildtools/DEPS?format=TEXT" | base64 -d > src/buildtools/DEPS
 
         gclient sync --spec="solutions=[{'name':'src/buildtools','url':None,'deps_file':'DEPS','custom_vars':{'process_deps':True},'managed':False}]"
     - name: Add ESLint problem matcher
Repository: huggingface/transformers
Pull request: Update assignee for generate in bug report template

Joao is regrettably no longer with us :saluting_face:  so we should really stop getting users to ping him! This PR makes @cyrilvallez responsible for `generate` issues outside of VLMs.

Changed files:
filename: .github/ISSUE_TEMPLATE/bug-report.yml
patch: @@ -44,7 +44,7 @@ body:
 
         Library:
 
-          - generate: @zucchini-nlp (visual-language models) or @gante (all others)
+          - generate: @zucchini-nlp (visual-language models) or @cyrilvallez (all others)
           - continuous batching: @remi-or @ArthurZucker @McPatate
           - pipelines: @Rocketknight1
           - tokenizers: @ArthurZucker and @itazap
Repository: ollama/ollama
Pull request: model: fix boundary in bpe

0x007e is a tilde and was getting adjusted (+0x00a2) to 0x0120 in the
encode, but then in the decode it was getting adjusted down (-0x0100) to
0x0020. The boundary for the +0x00a2 case has been adjusted to fix this

Fixes: #11966

Changed files:
filename: model/bytepairencoding.go
patch: @@ -109,7 +109,7 @@ func (bpe BytePairEncoding) Encode(s string, addSpecial bool) ([]int32, error) {
 					r = 0x0143
 				case r <= 0x0020:
 					r = r + 0x0100
-				case r >= 0x007e && r <= 0x00a0:
+				case r >= 0x007f && r <= 0x00a0:
 					r = r + 0x00a2
 				}
 

filename: model/bytepairencoding_test.go
patch: @@ -207,6 +207,36 @@ func TestLlama(t *testing.T) {
 			}
 		}
 	})
+
+	t.Run("roundtriping 0x00-0xFF", func(t *testing.T) {
+		t.Parallel()
+
+		for b := 0x00; b <= 0xFF; b++ {
+			input := string(rune(b))
+			ids, err := tokenizer.Encode(input, false)
+			if err != nil {
+				t.Errorf("failed to encode rune 0x%02X: %v", b, err)
+				continue
+			}
+
+			decoded, err := tokenizer.Decode(ids)
+			if err != nil {
+				t.Errorf("failed to decode rune 0x%02X: %v", b, err)
+				continue
+			}
+
+			if b == 0x00 {
+				if len(decoded) != 0 {
+					t.Errorf("Decode(Encode(0x00)) should be empty, got %v", ids)
+				}
+				continue
+			}
+
+			if decoded != input {
+				t.Errorf("rune 0x%02X failed roundtrip: got %q, want %q", b, decoded, input)
+			}
+		}
+	})
 }
 
 func BenchmarkBytePairEncoding(b *testing.B) {
Repository: ggml-org/llama.cpp
Pull request: rpc : fix misleading error log

When RPC is running with a remote backend which doesn't have init_tensor function (like CPU and Metal), the server log gets full with error messages saying that init_tensor is being called with null buffer which is incorrect. This patch fixes this.

- I have read and agree with the [contributing guidelines](https://github.com/ggml-org/llama.cpp/blob/master/CONTRIBUTING.md)
- AI usage disclosure: NO


Changed files:
filename: ggml/src/ggml-rpc/ggml-rpc.cpp
patch: @@ -1340,7 +1340,9 @@ bool rpc_server::init_tensor(const rpc_msg_init_tensor_req & request) {
     if (buffer && buffer->iface.init_tensor) {
         buffer->iface.init_tensor(buffer, tensor);
     } else {
-        GGML_LOG_ERROR("Null buffer for tensor passed to init_tensor function\n");
+        if (!buffer) {
+            GGML_LOG_ERROR("Tensor with null buffer passed to init_tensor function\n");
+        }
     }
 
     if (tensor->extra != nullptr) {