helloadhavan/github_issues huggingface dataset:
Repository: ggml-org/llama.cpp
Pull request: webui : use fflate for more deterministic gzip compress

The build sometimes produce nondeterministic result on older nodejs version, or on windows. The main reason is because the built-in `zlib` version of `node` is not always the same.

This PR replaces `node:zlib` with [fflate](https://www.npmjs.com/package/fflate) for gzip compression. It is a pure JS implementation, not relying on `zlib`, so the build is now deterministic.

Changed files:
filename: tools/server/webui/package-lock.json
patch: @@ -44,6 +44,7 @@
         "eslint": "^9.17.0",
         "eslint-plugin-react-hooks": "^5.0.0",
         "eslint-plugin-react-refresh": "^0.4.16",
+        "fflate": "^0.8.2",
         "globals": "^15.14.0",
         "prettier": "^3.4.2",
         "sass-embedded": "^1.83.4",
@@ -2802,6 +2803,13 @@
         "reusify": "^1.0.4"
       }
     },
+    "node_modules/fflate": {
+      "version": "0.8.2",
+      "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz",
+      "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==",
+      "dev": true,
+      "license": "MIT"
+    },
     "node_modules/file-entry-cache": {
       "version": "8.0.0",
       "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz",

filename: tools/server/webui/package.json
patch: @@ -47,6 +47,7 @@
     "eslint": "^9.17.0",
     "eslint-plugin-react-hooks": "^5.0.0",
     "eslint-plugin-react-refresh": "^0.4.16",
+    "fflate": "^0.8.2",
     "globals": "^15.14.0",
     "prettier": "^3.4.2",
     "sass-embedded": "^1.83.4",

filename: tools/server/webui/vite.config.ts
patch: @@ -3,7 +3,7 @@ import react from '@vitejs/plugin-react';
 import { viteSingleFile } from 'vite-plugin-singlefile';
 import path from 'node:path';
 import fs from 'node:fs';
-import zlib from 'node:zlib';
+import * as fflate from 'fflate';
 
 /* eslint-disable */
 
@@ -33,9 +33,10 @@ const BUILD_PLUGINS = [
       },
       writeBundle() {
         const outputIndexHtml = path.join(config.build.outDir, 'index.html');
-        const content =
+        let content =
           GUIDE_FOR_FRONTEND + '\n' + fs.readFileSync(outputIndexHtml, 'utf-8');
-        const compressed = zlib.gzipSync(Buffer.from(content, 'utf-8'), {
+        content = content.replace(/\r/g, ''); // remove windows-style line endings
+        const compressed = fflate.gzipSync(Buffer.from(content, 'utf-8'), {
           level: 9,
         });
Repository: vercel/next.js
Pull request: Fix timings data for deploy tests

This fixes an issue where deploy tests were intermittently passing when they shouldn't have been due to jobs not being sorted consistently across retries.  

Changed files:
filename: .github/workflows/build_reusable.yml
patch: @@ -80,6 +80,8 @@ env:
 
   TURBO_TEAM: 'vercel'
   TURBO_CACHE: 'remote:rw'
+  TURBO_API: ${{ secrets.HOSTED_TURBO_API }}
+  TURBO_TOKEN: ${{ secrets.HOSTED_TURBO_TOKEN }}
   NEXT_TELEMETRY_DISABLED: 1
   # allow not skipping install-native postinstall script if we don't have a binary available already
   NEXT_SKIP_NATIVE_POSTINSTALL: ${{ inputs.skipNativeInstall == 'yes' && '1' || '' }}

filename: .github/workflows/test_e2e_deploy_release.yml
patch: @@ -11,6 +11,10 @@ env:
   VERCEL_TEST_TEAM: vtest314-next-e2e-tests
   VERCEL_TEST_TOKEN: ${{ secrets.VERCEL_TEST_TOKEN }}
   DATADOG_API_KEY: ${{ secrets.DATA_DOG_API_KEY }}
+  TURBO_TEAM: 'vercel'
+  TURBO_CACHE: 'remote:rw'
+  TURBO_API: ${{ secrets.HOSTED_TURBO_API }}
+  TURBO_TOKEN: ${{ secrets.HOSTED_TURBO_TOKEN }}
   DD_ENV: 'ci'
 
 jobs:
Repository: denoland/deno
Pull request: fix(upgrade): better error message when check_exe fails

Fixes https://github.com/denoland/deno/issues/24971

Fixes the panic. We can give a more personalized error by checking the macOS version but probably not worth the effort.


Changed files:
filename: cli/tools/upgrade.rs
patch: @@ -972,8 +972,13 @@ fn check_exe(exe_path: &Path) -> Result<(), AnyError> {
     .arg("-V")
     .stderr(std::process::Stdio::inherit())
     .output()?;
-  assert!(output.status.success());
-  Ok(())
+  if !output.status.success() {
+    bail!(
+      "Failed to validate Deno executable. This may be because your OS is unsupported or the executable is corrupted"
+    )
+  } else {
+    Ok(())
+  }
 }
 
 #[derive(Debug)]
Repository: nodejs/node
Pull request: stream: validate undefined sizeAlgorithm in WritableStream

No test was added since it was covered by existing WPT, and the spec change did not introduce WPT updates

Fixes: https://github.com/nodejs/node/issues/56014
Refs: https://github.com/whatwg/streams/pull/1333

Changed files:
filename: lib/internal/webstreams/writablestream.js
patch: @@ -1176,9 +1176,18 @@ function writableStreamDefaultControllerGetDesiredSize(controller) {
 }
 
 function writableStreamDefaultControllerGetChunkSize(controller, chunk) {
+  const {
+    stream,
+    sizeAlgorithm,
+  } = controller[kState];
+  if (sizeAlgorithm === undefined) {
+    assert(stream[kState].state === 'errored' || stream[kState].state === 'erroring');
+    return 1;
+  }
+
   try {
     return FunctionPrototypeCall(
-      controller[kState].sizeAlgorithm,
+      sizeAlgorithm,
       undefined,
       chunk);
   } catch (error) {
Repository: facebook/react
Pull request: Fix test-build-devtools if build was generated by build-for-devtools

## Summary

I couldn't get `yarn test-build-devtools` to run for me locally even though CI passed. "Store › StrictMode compliance › should mark non strict root elements as not strict" and "Store › StrictMode compliance › should mark non strict root elements as not strict" were failing.
First I thought the difference in build variants was the issue (first commit) but this didn't fix tests locally.

The issue was that I was using `yarn build-for-devtools` while CI was using `yarn build-combined`. `yarn build-combined` updates `ReactVersion.js` which is used by Devtools to [determine what bits are set in the Fiber mode if StrictMode is enabled](https://github.com/facebook/react/blob/061ac27bc9c30e758301d9db823677a0803938c8/packages/react-devtools-shared/src/backend/renderer.js#L204-L214).  Since `yarn build-for-devtools` resulted in 17.0.3, Devtools didn't determine the correct StrictMode bits.

## How did you test this change?

- [x] `git clean -fdx; yarn; yarn build-for-devtools; yarn test-build-devtools`
- [x] CI

Changed files:
filename: package.json
patch: @@ -131,7 +131,7 @@
     "test-prod-build": "yarn test --deprecated 'yarn test --prod --build'",
     "test-build": "yarn test --deprecated 'yarn test --build'",
     "test-build-prod": "yarn test --deprecated 'yarn test --build --prod'",
-    "test-build-devtools": "yarn test --build --project devtools",
+    "test-build-devtools": "node ./scripts/jest/jest-cli.js --build --project devtools --release-channel=experimental",
     "debug-test-build-devtools": "yarn test --deprecated 'yarn test-build-devtools --debug'",
     "test-dom-fixture": "cd fixtures/dom && yarn && yarn prestart && yarn test",
     "flow": "node ./scripts/tasks/flow.js",

filename: packages/shared/ReactVersion.js
patch: @@ -7,10 +7,10 @@
 
 // TODO: this is special because it gets imported during build.
 //
-// TODO: 17.0.3 has not been released to NPM;
+// TODO: 18.0.0 has not been released to NPM;
 // It exists as a placeholder so that DevTools can support work tag changes between releases.
-// When we next publish a release (either 17.0.3 or 17.1.0), update the matching TODO in backend/renderer.js
+// When we next publish a release, update the matching TODO in backend/renderer.js
 // TODO: This module is used both by the release scripts and to expose a version
 // at runtime. We should instead inject the version number as part of the build
 // process, and use the ReactVersions.js module as the single source of truth.
-export default '17.0.3';
+export default '18.0.0';
Repository: denoland/deno
Pull request: fix: Don't panic if fail to handle JS stack frame


Changed files:
filename: Cargo.lock
patch: @@ -1389,9 +1389,9 @@ dependencies = [
 
 [[package]]
 name = "deno_core"
-version = "0.304.0"
+version = "0.305.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcb02f25a743fe58a117ed5cfd47c4e640761926e294a1f4ba964a0e2c68b4dc"
+checksum = "e7c823d9ee0cf31b4b8b6be65bc87a9e6ecb3ed5b244a68bbf25b6b8a477da25"
 dependencies = [
  "anyhow",
  "bincode",
@@ -1888,9 +1888,9 @@ dependencies = [
 
 [[package]]
 name = "deno_ops"
-version = "0.180.0"
+version = "0.181.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bbba184551dfe009836a42c0268fea6b4ad036b5154aec5a7625e7a7ce4e315"
+checksum = "6c06bd7a0fa5a7bc531a544a889eaf8f3594c22aba147e2efb820c4d8c547a91"
 dependencies = [
  "proc-macro-rules",
  "proc-macro2",
@@ -6252,9 +6252,9 @@ dependencies = [
 
 [[package]]
 name = "serde_v8"
-version = "0.213.0"
+version = "0.214.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1831a65bad8086cfc993eaead4cbcb00579c085e43b4952a90024e1243f23b4e"
+checksum = "77304686fddb9b8c915396512a2e7bca70b0b2d07edd1898eeefa22918ef45fb"
 dependencies = [
  "num-bigint",
  "serde",

filename: Cargo.toml
patch: @@ -45,7 +45,7 @@ repository = "https://github.com/denoland/deno"
 
 [workspace.dependencies]
 deno_ast = { version = "=0.41.2", features = ["transpiling"] }
-deno_core = { version = "0.304.0" }
+deno_core = { version = "0.305.0" }
 
 deno_bench_util = { version = "0.158.0", path = "./bench_util" }
 deno_lockfile = "0.21.2"
Repository: denoland/deno
Pull request: fix: deserialize lockfile v3 straight

v4 is a somewhat lossy format and so we can't actually work with v3 by upgrading to v4 and then downgrading.

* https://github.com/denoland/deno_lockfile/pull/34

Changed files:
filename: Cargo.lock
patch: @@ -1721,9 +1721,9 @@ dependencies = [
 
 [[package]]
 name = "deno_lockfile"
-version = "0.21.1"
+version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b01138860cdf20cfca4c9e6bcda2bbe577f0c784f6f6938205d522ee2b6327ed"
+checksum = "04beb67705d894d688e818870a701829223f6f485ef3ce0b8b2a7adac98d9583"
 dependencies = [
  "serde",
  "serde_json",

filename: Cargo.toml
patch: @@ -48,7 +48,7 @@ deno_ast = { version = "=0.41.2", features = ["transpiling"] }
 deno_core = { version = "0.304.0" }
 
 deno_bench_util = { version = "0.158.0", path = "./bench_util" }
-deno_lockfile = "0.21.1"
+deno_lockfile = "0.21.2"
 deno_media_type = { version = "0.1.4", features = ["module_specifier"] }
 deno_permissions = { version = "0.24.0", path = "./runtime/permissions" }
 deno_runtime = { version = "0.173.0", path = "./runtime" }
Repository: ggml-org/llama.cpp
Pull request: webui: Allow pasting file from clipboard


Changed files:
filename: tools/server/webui/package.json
patch: @@ -5,7 +5,7 @@
   "type": "module",
   "scripts": {
     "dev": "vite",
-    "build": "tsc -b && vite build",
+    "build": "npm run format && tsc -b && vite build",
     "format": "eslint . && prettier --write .",
     "lint": "eslint .",
     "preview": "vite preview"

filename: tools/server/webui/src/components/ChatScreen.tsx
patch: @@ -1,4 +1,4 @@
-import { useEffect, useMemo, useRef, useState } from 'react';
+import { ClipboardEvent, useEffect, useMemo, useRef, useState } from 'react';
 import { CallbackGeneratedChunk, useAppContext } from '../utils/app.context';
 import ChatMessage from './ChatMessage';
 import { CanvasType, Message, PendingMessage } from '../utils/types';
@@ -328,6 +328,17 @@ function ChatInput({
         {({ getRootProps, getInputProps }) => (
           <div
             className="flex flex-col rounded-xl border-1 border-base-content/30 p-3 w-full"
+            onPasteCapture={(e: ClipboardEvent<HTMLInputElement>) => {
+              const files = Array.from(e.clipboardData.items)
+                .filter((item) => item.kind === 'file')
+                .map((item) => item.getAsFile())
+                .filter((file) => file !== null);
+
+              if (files.length > 0) {
+                e.preventDefault();
+                extraContext.onFileAdded(files);
+              }
+            }}
             {...getRootProps()}
           >
             {!isGenerating && (
Repository: huggingface/transformers
Pull request: Fixes hqq by following a new path for bias parameter in pre_quantized models

# What does this PR do?

Since HQQ overrides the `load_state_dict` method for `HQQLinear`, it directly loads both the weight and bias parameters. This differs from our approach, where we iterate through the parameters one by one and load the bias separately from the weights. 

This PR updates the behavior to simply ignore the bias parameter, assuming it was already loaded alongside the weights in the case of pre-quantized models.

Changed files:
filename: src/transformers/quantizers/quantizer_hqq.py
patch: @@ -170,16 +170,13 @@ def check_quantized_param(
         module, tensor_name = get_module_from_name(model, param_name)
 
         if self.pre_quantized:
-            return (
-                (isinstance(module, torch.nn.Linear) or isinstance(module, HQQLinear))
-                and tensor_name != "weight"
-                and tensor_name != "bias"
-            )
+            return (isinstance(module, torch.nn.Linear) or isinstance(module, HQQLinear)) and tensor_name != "weight"
         else:
-            # we need a special path for bias since hqq overwrote load_state_dict for this layer
             return (
                 isinstance(module, torch.nn.Linear)
                 and tensor_name == "weight"
+                # bias doesn't need to be quantized, we use this as a workaround to avoid loading bias into HQQLinear assuming it was loaded
+                # in the state_dict directly with the weight because hqq overwrote load_state_dict for this layer
                 or (isinstance(module, HQQLinear) and tensor_name == "bias")
             )
 

filename: tests/quantization/hqq/test_hqq.py
patch: @@ -165,6 +165,39 @@ def test_fp16_quantized_model(self):
         check_hqqlayer(self, hqq_runner.model.model.decoder.layers[0].self_attn.v_proj)
         check_forward(self, hqq_runner.model)
 
+    def test_save_and_load_quantized_model(self):
+        """
+        Test saving and loading a quantized model with bias
+        """
+        import tempfile
+
+        quant_config = HqqConfig(nbits=8, group_size=64)
+
+        hqq_runner = HQQLLMRunner(
+            model_id="facebook/opt-125m", quant_config=quant_config, compute_dtype=torch.float16, device=torch_device
+        )
+
+        input_tensor = torch.zeros((1, 8), dtype=torch.int32, device=torch_device)
+
+        # Get reference logits
+        with torch.no_grad():
+            logits_ref = hqq_runner.model.forward(input_tensor).logits
+
+        with tempfile.TemporaryDirectory() as tmpdirname:
+            hqq_runner.model.save_pretrained(tmpdirname)
+
+            del hqq_runner.model
+            torch.cuda.empty_cache()
+
+            model_loaded = AutoModelForCausalLM.from_pretrained(
+                tmpdirname, torch_dtype=torch.float16, device_map=torch_device
+            )
+
+            with torch.no_grad():
+                logits_loaded = model_loaded.forward(input_tensor).logits
+
+            self.assertEqual((logits_loaded - logits_ref).abs().mean().item(), 0)
+
 
 @slow
 @require_torch_gpu
Repository: nodejs/node
Pull request: test: remove async-hooks/test-writewrap flaky designation

The issue is the same as other tests that time out.

Refs: https://github.com/nodejs/node/issues/54918
Refs: https://github.com/nodejs/node/pull/54802

<!--
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: test/async-hooks/async-hooks.status
patch: @@ -9,8 +9,6 @@ prefix async-hooks
 [$system==win32]
 
 [$system==linux]
-# https://github.com/nodejs/node/issues/54809
-test-writewrap: PASS, FLAKY
 
 [$system==macos]
Repository: facebook/react
Pull request: Bump versions to rc.3

Mostly so we can include https://github.com/facebook/react/commit/2e0d86d22192ff0b13b71b4ad68fea46bf523ef6. It's a non-breaking change, though, so if we end up finding a bug before the stable 18.0 release, we can revert it and re-land in a minor. Or fix forward.

Changed files:
filename: ReactVersions.js
patch: @@ -18,26 +18,26 @@
 //
 //   0.0.0-experimental-241c4467e-20200129
 
-const ReactVersion = '18.0.0-rc.2';
+const ReactVersion = '18.0.0-rc.3';
 
 // The label used by the @next channel. Represents the upcoming release's
 // stability. Could be "alpha", "beta", "rc", etc.
 const nextChannelLabel = 'next';
 
 const stablePackages = {
   'create-subscription': ReactVersion,
-  'eslint-plugin-react-hooks': '4.2.1-rc.2',
-  'jest-react': '0.12.1-rc.2',
+  'eslint-plugin-react-hooks': '4.2.1-rc.3',
+  'jest-react': '0.12.1-rc.3',
   react: ReactVersion,
   'react-art': ReactVersion,
   'react-dom': ReactVersion,
   'react-is': ReactVersion,
-  'react-reconciler': '0.27.0-rc.2',
-  'react-refresh': '0.11.0-rc.2',
+  'react-reconciler': '0.27.0-rc.3',
+  'react-refresh': '0.11.0-rc.3',
   'react-test-renderer': ReactVersion,
-  'use-subscription': '1.6.0-rc.2',
-  'use-sync-external-store': '1.0.0-rc.2',
-  scheduler: '0.21.0-rc.2',
+  'use-subscription': '1.6.0-rc.3',
+  'use-sync-external-store': '1.0.0-rc.3',
+  scheduler: '0.21.0-rc.3',
 };
 
 // These packages do not exist in the @next or @latest channel, only
Repository: ggml-org/llama.cpp
Pull request: scripts : fix compare-llama-bench.py show parameter

When `n_depth` was added the slices that excluded `n_prompt` and `n_gen` from `--show` were not updated.

Changed files:
filename: scripts/compare-llama-bench.py
patch: @@ -113,7 +113,7 @@
 help_s = (
     "Columns to add to the table. "
     "Accepts a comma-separated list of values. "
-    f"Legal values: {', '.join(KEY_PROPERTIES[:-2])}. "
+    f"Legal values: {', '.join(KEY_PROPERTIES[:-3])}. "
     "Defaults to model name (model_type) and CPU and/or GPU name (cpu_info, gpu_info) "
     "plus any column where not all data points are the same. "
     "If the columns are manually specified, then the results for each unique combination of the "
@@ -505,7 +505,7 @@ def valid_format(data_files: list[str]) -> bool:
     show = known_args.show.split(",")
     unknown_cols = []
     for prop in show:
-        if prop not in KEY_PROPERTIES[:-2]:  # Last two values are n_prompt, n_gen.
+        if prop not in KEY_PROPERTIES[:-3]:  # Last three values are n_prompt, n_gen, n_depth.
             unknown_cols.append(prop)
     if unknown_cols:
         logger.error(f"Unknown values for --show: {', '.join(unknown_cols)}")
Repository: denoland/deno
Pull request: fix(lsp): include scoped import map keys in completions

Fixes https://github.com/denoland/vscode_deno/issues/1143.

Changed files:
filename: cli/lsp/completions.rs
patch: @@ -249,7 +249,7 @@ pub async fn get_import_completions(
       .collect();
     let mut is_incomplete = false;
     if let Some(import_map) = maybe_import_map {
-      items.extend(get_base_import_map_completions(import_map));
+      items.extend(get_base_import_map_completions(import_map, specifier));
     }
     if let Some(origin_items) =
       module_registries.get_origin_completions(&text, &range)
@@ -268,20 +268,20 @@ pub async fn get_import_completions(
 /// map as completion items.
 fn get_base_import_map_completions(
   import_map: &ImportMap,
+  referrer: &ModuleSpecifier,
 ) -> Vec<lsp::CompletionItem> {
   import_map
-    .imports()
-    .keys()
-    .map(|key| {
+    .entries_for_referrer(referrer)
+    .map(|entry| {
       // for some strange reason, keys that start with `/` get stored in the
       // import map as `file:///`, and so when we pull the keys out, we need to
       // change the behavior
-      let mut label = if key.starts_with("file://") {
-        FILE_PROTO_RE.replace(key, "").to_string()
+      let mut label = if entry.key.starts_with("file://") {
+        FILE_PROTO_RE.replace(entry.key, "").to_string()
       } else {
-        key.to_string()
+        entry.key.to_string()
       };
-      let kind = if key.ends_with('/') {
+      let kind = if entry.key.ends_with('/') {
         label.pop();
         Some(lsp::CompletionItemKind::FOLDER)
       } else {

filename: tests/integration/lsp_tests.rs
patch: @@ -1346,23 +1346,27 @@ fn lsp_import_map_import_completions() {
   let context = TestContextBuilder::new().use_temp_cwd().build();
   let temp_dir = context.temp_dir();
   temp_dir.write(
-    "import-map.json",
-    r#"{
-  "imports": {
-    "/~/": "./lib/",
-    "/#/": "./src/",
-    "fs": "https://example.com/fs/index.js",
-    "std/": "https://example.com/std@0.123.0/"
-  }
-}"#,
+    "deno.json",
+    json!({
+      "imports": {
+        "/~/": "./lib/",
+        "/#/": "./src/",
+        "fs": "https://example.com/fs/index.js",
+        "std/": "https://example.com/std@0.123.0/",
+      },
+      "scopes": {
+        "file:///": {
+          "file": "./file.ts",
+        },
+      },
+    })
+    .to_string(),
   );
   temp_dir.create_dir_all("lib");
   temp_dir.write("lib/b.ts", r#"export const b = "b";"#);
 
   let mut client = context.new_lsp_command().build();
-  client.initialize(|builder| {
-    builder.set_import_map("import-map.json");
-  });
+  client.initialize_default();
 
   let uri = temp_dir.uri().join("a.ts").unwrap();
 
@@ -1403,6 +1407,13 @@ fn lsp_import_map_import_completions() {
           "insertText": "..",
           "commitCharacters": ["\"", "'"],
         }, {
+          "label": "file",
+          "kind": 17,
+          "detail": "(import map)",
+          "sortText": "file",
+          "insertText": "file",
+          "commitCharacters": ["\"", "'"],
+        },  {
           "label": "std",
           "kind": 19,
           "detail": "(import map)",