helloadhavan/github_issues huggingface dataset:
Repository: ollama/ollama
Pull request: openai: do not set temperature to 0 when setting seed

`tempearture` was previously set to 0 for reproducible outputs when setting seed, however this is not required

Note https://github.com/ollama/ollama/issues/4990 is still an open issue on Nvidia/AMD GPUs

Fixes https://github.com/ollama/ollama/issues/5044

Changed files:
filename: docs/openai.md
patch: @@ -104,7 +104,6 @@ curl http://localhost:11434/v1/chat/completions \
 
 #### Notes
 
-- Setting `seed` will always set `temperature` to `0`
 - `finish_reason` will always be `stop`
 - `usage.prompt_tokens` will be 0 for completions where prompt evaluation is cached
 

filename: openai/openai.go
patch: @@ -178,9 +178,6 @@ func fromRequest(r ChatCompletionRequest) api.ChatRequest {
 
 	if r.Seed != nil {
 		options["seed"] = *r.Seed
-
-		// temperature=0 is required for reproducible outputs
-		options["temperature"] = 0.0
 	}
 
 	if r.FrequencyPenalty != nil {
Repository: ggml-org/llama.cpp
Pull request: scripts : fix repos cloned with .git extension

Fixes https://github.com/ggml-org/llama.cpp/pull/18644#issuecomment-3719033028

Changed files:
filename: scripts/pr2wt.sh
patch: @@ -34,6 +34,7 @@ url_origin=$(git config --get remote.origin.url) || {
 }
 
 org_repo=$(echo $url_origin | cut -d/ -f4-)
+org_repo=${org_repo%.git}
 
 echo "org/repo: $org_repo"
Repository: vercel/next.js
Pull request: [test] Skip devlow benchmarks on PRs

These are slow and we don't have the resources to run them on every PR change.

Changed files:
filename: .github/workflows/build_and_test.yml
patch: @@ -195,7 +195,7 @@ jobs:
   devlow-bench:
     name: Run devlow benchmarks
     needs: ['optimize-ci', 'changes', 'build-next', 'build-native']
-    if: ${{ needs.optimize-ci.outputs.skip == 'false' && needs.changes.outputs.docs-only == 'false' && !github.event.pull_request.head.repo.fork }}
+    if: ${{ needs.optimize-ci.outputs.skip == 'false' && needs.changes.outputs.docs-only == 'false' && github.event_name != 'pull_request' }}
 
     strategy:
       fail-fast: false
Repository: facebook/react
Pull request: remove terser from react-compiler-runtime build

## Summary

This fixes a minor nit I have about the `react-compiler-runtime` package in that the published code is minified. I assume most consumers will minify their own bundles so there's no real advantage to minifying it as part of the build. 

For my purposes it makes it more difficult to read the code, use `patch-package` (if needed), or diff two versions without referencing the source code on github or mapping it back to original source using the source maps. 

## How did you test this change?

I ran the build locally and looked at the result but did not run the code. It's a lot more readable except for the commonjs compatibility-related stuff that Rollup inserts. 


Changed files:
filename: compiler/packages/react-compiler-runtime/rollup.config.js
patch: @@ -11,7 +11,6 @@ import commonjs from '@rollup/plugin-commonjs';
 import json from '@rollup/plugin-json';
 import path from 'path';
 import process from 'process';
-import terser from '@rollup/plugin-terser';
 import banner2 from 'rollup-plugin-banner2';
 
 const NO_INLINE = new Set(['react']);
@@ -37,11 +36,6 @@ const PROD_ROLLUP_CONFIG = {
       rootDir: path.join(process.cwd(), '..'),
     }),
     commonjs(),
-    terser({
-      format: {
-        comments: false,
-      },
-    }),
     banner2(
       () => `/**
  * Copyright (c) Meta Platforms, Inc. and affiliates.
Repository: ggml-org/llama.cpp
Pull request: scripts : support chaining commands in pr2wt.sh

cont #18644 

Allows using:

```bash
./scripts/pr2wt.sh 12345 "cmake -B build && cmake --build build"
```

Changed files:
filename: scripts/pr2wt.sh
patch: @@ -9,6 +9,7 @@
 # sample usage:
 #   ./scripts/pr2wt.sh 12345
 #   ./scripts/pr2wt.sh 12345 opencode
+#   ./scripts/pr2wt.sh 12345 "cmake -B build && cmake --build build"
 
 function usage() {
     echo "usage: $0 <pr_number> [cmd]"
@@ -46,7 +47,7 @@ head_ref=$(echo "$meta" | jq -r '.head.ref')
 echo "url:      $url_remote"
 echo "head_ref: $head_ref"
 
-git remote rm  pr/${PR}
+git remote rm  pr/${PR} 2> /dev/null
 git remote add pr/${PR} $url_remote
 git fetch      pr/${PR} $head_ref
 
@@ -62,5 +63,5 @@ echo "git worktree created in $wt_path"
 # if a command was provided, execute it
 if [[ $# -eq 2 ]]; then
     cd ../$dir-pr-$PR
-    exec $2
+    eval "$2"
 fi
Repository: ollama/ollama
Pull request: server: longer timeout in `TestRequests`

@dhiltgen this seems like a band-aid - is there something deeper we should fix in this test?

Changed files:
filename: server/sched_test.go
patch: @@ -150,7 +150,7 @@ func newScenario(t *testing.T, ctx context.Context, modelName string, estimatedV
 }
 
 func TestRequests(t *testing.T) {
-	ctx, done := context.WithTimeout(context.Background(), time.Second)
+	ctx, done := context.WithTimeout(context.Background(), 10*time.Second)
 	defer done()
 
 	// Same model, same request
Repository: electron/electron
Pull request: ci: cleanup use new arc cluster

#### Description of Change
- Followup to #47897.
This PR addresses https://github.com/electron/electron/pull/47897#pullrequestreview-3072643805 and https://github.com/electron/electron/pull/47897#discussion_r2243390393
<!--
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
-->

#### Checklist
<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

- [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: <!-- 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/build-electron/action.yml
patch: @@ -47,11 +47,6 @@ runs:
     - name: Add Clang problem matcher
       shell: bash
       run: echo "::add-matcher::src/electron/.github/problem-matchers/clang.json"
-    - name: Enable long paths for Windows
-      shell: powershell
-      if: ${{ inputs.target-platform == 'win' }}
-      run: |
-        Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1 -Type DWord
     - name: Build Electron ${{ inputs.step-suffix }}
       shell: bash
       run: |

filename: .github/actions/restore-cache-azcopy/action.yml
patch: @@ -36,12 +36,8 @@ runs:
           echo "SAS Token not found; exiting src cache download early..."
           exit 1
         else
-          echo "const fs = require('fs');" > gettoken.js
-          echo "const fileContents = fs.readFileSync('sas-token', 'utf8');" >> gettoken.js
-          echo "const token = JSON.parse(fileContents);" >> gettoken.js
-          echo "console.log(token[process.argv[2]])" >> gettoken.js
-          sas_token=$(node ./gettoken.js sasToken)
-          account_name=$(node ./gettoken.js accountName)
+          sas_token=$(jq -r '.sasToken' sas-token)
+          account_name=$(jq -r '.accountName' sas-token)
           if [ "${{ inputs.target-platform }}" = "win" ]; then
             azcopy copy --log-level=ERROR \
             "https://$account_name.file.core.windows.net/${{ env.AZURE_AKS_WIN_CACHE_SHARE_NAME }}/${{ env.CACHE_PATH }}?$sas_token" $DEPSHASH.tar
Repository: electron/electron
Pull request: ci: cleanup use new arc cluster

Backport of #47916

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/build-electron/action.yml
patch: @@ -47,11 +47,6 @@ runs:
     - name: Add Clang problem matcher
       shell: bash
       run: echo "::add-matcher::src/electron/.github/problem-matchers/clang.json"
-    - name: Enable long paths for Windows
-      shell: powershell
-      if: ${{ inputs.target-platform == 'win' }}
-      run: |
-        Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1 -Type DWord
     - name: Build Electron ${{ inputs.step-suffix }}
       shell: bash
       run: |

filename: .github/actions/restore-cache-azcopy/action.yml
patch: @@ -36,12 +36,8 @@ runs:
           echo "SAS Token not found; exiting src cache download early..."
           exit 1
         else
-          echo "const fs = require('fs');" > gettoken.js
-          echo "const fileContents = fs.readFileSync('sas-token', 'utf8');" >> gettoken.js
-          echo "const token = JSON.parse(fileContents);" >> gettoken.js
-          echo "console.log(token[process.argv[2]])" >> gettoken.js
-          sas_token=$(node ./gettoken.js sasToken)
-          account_name=$(node ./gettoken.js accountName)
+          sas_token=$(jq -r '.sasToken' sas-token)
+          account_name=$(jq -r '.accountName' sas-token)
           if [ "${{ inputs.target-platform }}" = "win" ]; then
             azcopy copy --log-level=ERROR \
             "https://$account_name.file.core.windows.net/${{ env.AZURE_AKS_WIN_CACHE_SHARE_NAME }}/${{ env.CACHE_PATH }}?$sas_token" $DEPSHASH.tar
Repository: facebook/react
Pull request: [Flight] Support Async Modules in Server References

This is required to support for example top level await in a "use server" module or dependency of a "use server".


Changed files:
filename: packages/react-server-dom-webpack/src/client/ReactFlightClientConfigBundlerWebpack.js
patch: @@ -86,6 +86,13 @@ export function resolveClientReference<T>(
       }
       name = metadata[NAME];
     }
+    // Note that resolvedModuleData.async may be set if this is an Async Module.
+    // For Client References we don't actually care because what matters is whether
+    // the consumer expects an unwrapped async module or just a raw Promise so it
+    // has to already know which one it wants.
+    // We could error if this is an Async Import but it's not an Async Module.
+    // However, we also support plain CJS exporting a top level Promise which is not
+    // an Async Module according to the bundle graph but is effectively the same.
     if (isAsyncImport(metadata)) {
       return [
         resolvedModuleData.id,
@@ -128,7 +135,19 @@ export function resolveServerReference<T>(
       );
     }
   }
-  // TODO: This needs to return async: true if it's an async module.
+  if (resolvedModuleData.async) {
+    // If the module is marked as async in a Client Reference, we don't actually care.
+    // What matters is whether the consumer wants to unwrap it or not.
+    // For Server References, it is different because the consumer is completely internal
+    // to the bundler. So instead of passing it to each reference we can mark it in the
+    // manifest.
+    return [
+      resolvedModuleData.id,
+      resolvedModuleData.chunks,
+      name,
+      1 /* async */,
+    ];
+  }
   return [resolvedModuleData.id, resolvedModuleData.chunks, name];
 }
Repository: ggml-org/llama.cpp
Pull request: metal : add MoE kernel specialization for ne20=5

## Summary
- Add template specialization for `kernel_mul_mm_id_map0` with `ne20=5`
- Enables Metal GPU acceleration for models using 5 active experts (e.g., [VAETKI](https://huggingface.co/nc-ai-consortium/VAETKI-7B-A1B))

## Details
The existing MoE Metal kernel supports ne20 values of 1, 2, 4, 6, 8, 10, 16 but not 5.
This single-line addition instantiates the template for ne20=5.

## Test
Tested with VAETKI-7B-A1B model on Apple M4 Max.


Changed files:
filename: ggml/src/ggml-metal/ggml-metal.metal
patch: @@ -9148,6 +9148,7 @@ typedef decltype(kernel_mul_mm_id_map0<1>) kernel_mul_mm_id_map0_t;
 template [[host_name("kernel_mul_mm_id_map0_ne20_1" )]] kernel kernel_mul_mm_id_map0_t kernel_mul_mm_id_map0<1>;
 template [[host_name("kernel_mul_mm_id_map0_ne20_2" )]] kernel kernel_mul_mm_id_map0_t kernel_mul_mm_id_map0<2>;
 template [[host_name("kernel_mul_mm_id_map0_ne20_4" )]] kernel kernel_mul_mm_id_map0_t kernel_mul_mm_id_map0<4>;
+template [[host_name("kernel_mul_mm_id_map0_ne20_5" )]] kernel kernel_mul_mm_id_map0_t kernel_mul_mm_id_map0<5>;
 template [[host_name("kernel_mul_mm_id_map0_ne20_6" )]] kernel kernel_mul_mm_id_map0_t kernel_mul_mm_id_map0<6>;
 template [[host_name("kernel_mul_mm_id_map0_ne20_8" )]] kernel kernel_mul_mm_id_map0_t kernel_mul_mm_id_map0<8>;
 template [[host_name("kernel_mul_mm_id_map0_ne20_10")]] kernel kernel_mul_mm_id_map0_t kernel_mul_mm_id_map0<10>;
Repository: vercel/next.js
Pull request: [test] Unflake typed-env suite

`toMatchInlineSnapshot` does not actually throw but mark the test as failed making it not suitable to use within `retry` since `retry` expects the callback to throw to perform a retry.

We should lint against `toMatchInlineSnapshot` within `retry` though that wouldn't cover custom matchers.

Changed files:
filename: test/development/app-dir/typed-env/typed-env.test.ts
patch: @@ -1,3 +1,4 @@
+import { outdent } from 'outdent'
 import { nextTestSetup } from 'e2e-utils'
 import { retry } from 'next-test-utils'
 
@@ -14,8 +15,9 @@ describe('typed-env', () => {
       expect(envDTS).not.toContain('FROM_ENV_PROD')
       expect(envDTS).not.toContain('FROM_ENV_PROD_LOCAL')
 
-      expect(envDTS).toMatchInlineSnapshot(`
-        "// Type definitions for Next.js environment variables
+      expect(envDTS).toEqual(
+        outdent`
+        // Type definitions for Next.js environment variables
         declare global {
           namespace NodeJS {
             interface ProcessEnv {
@@ -32,8 +34,9 @@ describe('typed-env', () => {
             }
           }
         }
-        export {}"
-      `)
+        export {}
+      `.trim()
+      )
     })
   })
 
@@ -51,8 +54,9 @@ describe('typed-env', () => {
     // but have MODIFIED_ENV?: string
     await retry(async () => {
       const content = await next.readFile(`${next.distDir}/types/env.d.ts`)
-      expect(content).toMatchInlineSnapshot(`
-        "// Type definitions for Next.js environment variables
+      expect(content).toEqual(
+        outdent`
+        // Type definitions for Next.js environment variables
         declare global {
           namespace NodeJS {
             interface ProcessEnv {
@@ -69,8 +73,9 @@ describe('typed-env', () => {
             }
           }
         }
-        export {}"
-      `)
+        export {}
+      `.trim()
+      )
     })
   })
Repository: facebook/react
Pull request: Fix timing issue with fake promise resolving sync


Changed files:
filename: packages/react-client/src/ReactFlightClient.js
patch: @@ -1078,7 +1078,7 @@ function loadServerReference<A: Iterable<any>, T>(
     if (!metaData.bound) {
       return (requireModule(serverReference): any);
     } else {
-      promise = metaData.bound;
+      promise = Promise.resolve(metaData.bound);
     }
   } else if (metaData.bound) {
     promise = Promise.all([promise, metaData.bound]);
Repository: huggingface/transformers
Pull request: fix `deeepspeed` in AMD docker file

# What does this PR do?

Similar to #41985

[Build](https://github.com/huggingface/transformers/actions/runs/19092684983/job/54546222873) is ✅ now

Changed files:
filename: docker/transformers-pytorch-deepspeed-amd-gpu/Dockerfile
patch: @@ -29,7 +29,7 @@ RUN python3 -m pip uninstall -y apex torch torchvision torchaudio
 RUN python3 -m pip install torch==$PYTORCH torchvision==$TORCH_VISION torchaudio==$TORCH_AUDIO --index-url https://download.pytorch.org/whl/rocm$ROCM --no-cache-dir
 
 # Pre-build DeepSpeed, so it's be ready for testing (to avoid timeout)
-RUN DS_BUILD_CPU_ADAM=1 DS_BUILD_FUSED_ADAM=1 python3 -m pip install deepspeed --global-option="build_ext" --global-option="-j8" --no-cache-dir -v --disable-pip-version-check 2>&1
+RUN DS_BUILD_CPU_ADAM=1 DS_BUILD_FUSED_ADAM=1 python3 -m pip install deepspeed --no-build-isolation --config-settings="--build-option=build_ext" --config-settings="--build-option=-j8" --no-cache-dir -v --disable-pip-version-check 2>&1
 
 ARG REF=main
 WORKDIR /
Repository: facebook/react
Pull request: Fix types


Changed files:
filename: packages/react-client/src/ReactFlightClient.js
patch: @@ -1073,11 +1073,16 @@ function loadServerReference<A: Iterable<any>, T>(
       metaData.id,
     );
 
-  let promise = preloadModule(serverReference);
-  if (!promise && !metaData.bound) {
-    return (requireModule(serverReference): any);
+  let promise: null | Thenable<any> = preloadModule(serverReference);
+  if (!promise) {
+    if (!metaData.bound) {
+      return (requireModule(serverReference): any);
+    } else {
+      promise = metaData.bound;
+    }
+  } else if (metaData.bound) {
+    promise = Promise.all([promise, metaData.bound]);
   }
-  promise = Promise.all([promise, metaData.bound]);
 
   let handler: InitializationHandler;
   if (initializingHandler) {
Repository: facebook/react
Pull request: [Flight] Handle bound arguments for loaded server references

Follow up to #31300.

I forgot to pass the bound arguments to the loaded function.


Changed files:
filename: packages/react-client/src/ReactFlightClient.js
patch: @@ -1073,10 +1073,11 @@ function loadServerReference<A: Iterable<any>, T>(
       metaData.id,
     );
 
-  const promise = preloadModule(serverReference);
-  if (!promise) {
+  let promise = preloadModule(serverReference);
+  if (!promise && !metaData.bound) {
     return (requireModule(serverReference): any);
   }
+  promise = Promise.all([promise, metaData.bound]);
 
   let handler: InitializationHandler;
   if (initializingHandler) {
@@ -1093,7 +1094,15 @@ function loadServerReference<A: Iterable<any>, T>(
   }
 
   function fulfill(): void {
-    const resolvedValue = (requireModule(serverReference): any);
+    let resolvedValue = (requireModule(serverReference): any);
+
+    if (metaData.bound) {
+      // This promise is coming from us and should have initilialized by now.
+      const boundArgs: Array<any> = (metaData.bound: any).value.slice(0);
+      boundArgs.unshift(null); // this
+      resolvedValue = resolvedValue.bind.apply(resolvedValue, boundArgs);
+    }
+
     parentObject[key] = resolvedValue;
 
     // If this is the root object for a model reference, where `handler.value`

filename: packages/react-server-dom-webpack/src/__tests__/ReactFlightDOMEdge-test.js
patch: @@ -215,8 +215,8 @@ describe('ReactFlightDOMEdge', () => {
   });
 
   it('should be able to load a server reference on a consuming server if a mapping exists', async () => {
-    function greet() {
-      return 'hi';
+    function greet(name) {
+      return 'hi, ' + name;
     }
     const ServerModule = serverExports({
       greet,
@@ -226,6 +226,7 @@ describe('ReactFlightDOMEdge', () => {
       ReactServerDOMServer.renderToReadableStream(
         {
           method: ServerModule.greet,
+          boundMethod: ServerModule.greet.bind(null, 'there'),
         },
         webpackMap,
       ),
@@ -241,14 +242,15 @@ describe('ReactFlightDOMEdge', () => {
     const result = await response;
 
     expect(result.method).toBe(greet);
+    expect(result.boundMethod()).toBe('hi, there');
   });
 
   it('should be able to load a server reference on a consuming server if a mapping exists (async)', async () => {
     let resolve;
     const chunkPromise = new Promise(r => (resolve = r));
 
-    function greet() {
-      return 'hi';
+    function greet(name) {
+      return 'hi, ' + name;
     }
     const ServerModule = serverExports(
       {
@@ -261,6 +263,7 @@ describe('ReactFlightDOMEdge', () => {
       ReactServerDOMServer.renderToReadableStream(
         {
           method: ServerModule.greet,
+          boundMethod: ServerModule.greet.bind(null, 'there'),
         },
         webpackMap,
       ),
@@ -278,6 +281,7 @@ describe('ReactFlightDOMEdge', () => {
     const result = await response;
 
     expect(result.method).toBe(greet);
+    expect(result.boundMethod()).toBe('hi, there');
   });
 
   it('should encode long string in a compact format', async () => {
Repository: facebook/react
Pull request: [Flight] Align turbopack option name with webpack name

This was renamed in #31300.

Changed files:
filename: packages/react-server-dom-turbopack/src/__tests__/ReactFlightTurbopackDOMEdge-test.js
patch: @@ -97,7 +97,7 @@ describe('ReactFlightTurbopackDOMEdge', () => {
       turbopackMap,
     );
     const response = ReactServerDOMClient.createFromReadableStream(stream, {
-      serverManifest: {
+      serverConsumerManifest: {
         moduleMap: translationMap,
         moduleLoading: null,
       },

filename: packages/react-server-dom-turbopack/src/client/ReactFlightDOMClientEdge.js
patch: @@ -68,7 +68,7 @@ type EncodeFormActionCallback = <A>(
 ) => ReactCustomFormAction;
 
 export type Options = {
-  serverManifest: ServerConsumerManifest,
+  serverConsumerManifest: ServerConsumerManifest,
   nonce?: string,
   encodeFormAction?: EncodeFormActionCallback,
   temporaryReferences?: TemporaryReferenceSet,
@@ -79,9 +79,9 @@ export type Options = {
 
 function createResponseFromOptions(options: Options) {
   return createResponse(
-    options.serverManifest.moduleMap,
-    options.serverManifest.serverModuleMap,
-    options.serverManifest.moduleLoading,
+    options.serverConsumerManifest.moduleMap,
+    options.serverConsumerManifest.serverModuleMap,
+    options.serverConsumerManifest.moduleLoading,
     noServerCall,
     options.encodeFormAction,
     typeof options.nonce === 'string' ? options.nonce : undefined,
Repository: denoland/deno
Pull request: feat(ext/node): add native TLSWrap cppgc object (Rust core)

## Summary
- Port `TLSWrap` from #32819 as a standalone Rust-only addition (2952 lines)
- Adapted to work with existing `libuv_stream::TCP` (not the `tcp_wrap::TCPWrap` replacement from #32819)
- `TLSWrap` is a cppgc object inheriting from `LibUvStreamWrap` that intercepts TCP reads, feeds encrypted data through rustls, and emits cleartext to JS
- No JS wiring yet — the object is registered but unused. JS integration is the next PR
- Key adaptations from #32819:
  - `attach()` takes `libuv_stream::TCP` instead of `tcp_wrap::TCPWrap`
  - `build_server_config` uses `with_single_cert` (not `SingleCertAndKey`)
  - Uses `deno_tls::rustls` re-export (no new Cargo deps)
  - Adds `client_session_store` to `NodeTlsState` for session resumption

## Test plan
- [x] `cargo check -p deno_node` — compiles clean
- [x] `./tools/lint.js` — no new lint errors
- [x] `./tools/format.js` — formatted
- [x] `./x test-spec tls` — all 3 tests pass
- [x] `./x test-unit tls` — all 2 tests pass
- No functional change (TLSWrap registered but not yet used from JS)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Changed files:
filename: ext/node/lib.rs
patch: @@ -390,6 +390,7 @@ deno_core::extension!(deno_node,
     ops::zlib::ZstdCompress,
     ops::zlib::ZstdDecompress,
     ops::libuv_stream::TCP,
+    ops::tls_wrap::TLSWrap,
     ops::http2::Http2Session,
     ops::http2::Http2Stream,
   ],

filename: ext/node/ops/mod.rs
patch: @@ -22,6 +22,7 @@ pub mod shell;
 pub mod stream_wrap;
 pub(crate) mod stream_wrap_state;
 pub mod tls;
+pub mod tls_wrap;
 pub mod tty_wrap;
 pub mod udp;
 pub mod util;

filename: ext/node/ops/tls.rs
patch: @@ -46,8 +46,10 @@ use rustls_tokio_stream::UnderlyingStream;
 use webpki_root_certs;
 
 #[derive(Clone)]
-struct NodeTlsState {
-  custom_ca_certs: Option<Vec<String>>,
+pub(crate) struct NodeTlsState {
+  pub(crate) custom_ca_certs: Option<Vec<String>>,
+  pub(crate) client_session_store:
+    Arc<dyn deno_tls::rustls::client::ClientSessionStore>,
 }
 
 #[op2]
@@ -90,6 +92,9 @@ pub fn op_set_default_ca_certificates(
   } else {
     state.put(NodeTlsState {
       custom_ca_certs: Some(certs),
+      client_session_store: Arc::new(
+        deno_tls::rustls::client::ClientSessionMemoryCache::new(256),
+      ),
     });
   }
 }