helloadhavan/github_issues huggingface dataset:
Repository: denoland/deno
Pull request: fix: enable the reporting of parsing related problems when running deno lint

Supported reporting of syntax/parsing errors.

The commit is made to address issue #23437 

Code changes

Added check for ParsedSource.diagnostics() and when it's not empty, all parse diagnostic errors will be logged/displayed.

PS: The change was within `fn handle_lint_result()` to log any found parse or lint diagnostic errors, since this function is called after any lint is done.

Changed files:
filename: .dprint.json
patch: @@ -41,6 +41,7 @@
     "tests/registry/",
     "tests/specs/fmt",
     "tests/specs/lint/bom",
+    "tests/specs/lint/syntax_error_reporting",
     "tests/specs/publish/no_check_surfaces_syntax_error",
     "tests/testdata/byte_order_mark.ts",
     "tests/testdata/encoding",

filename: cli/tools/lint/mod.rs
patch: @@ -646,7 +646,12 @@ fn handle_lint_result(
   let mut reporter = reporter_lock.lock();
 
   match result {
-    Ok((_source, mut file_diagnostics)) => {
+    Ok((source, mut file_diagnostics)) => {
+      if !source.diagnostics().is_empty() {
+        for parse_diagnostic in source.diagnostics() {
+          log::warn!("{}: {}", colors::yellow("warn"), parse_diagnostic);
+        }
+      }
       file_diagnostics.sort_by(|a, b| match a.specifier.cmp(&b.specifier) {
         std::cmp::Ordering::Equal => a.range.start.cmp(&b.range.start),
         file_order => file_order,

filename: tests/specs/lint/syntax_error_reporting/__test__.jsonc
patch: @@ -0,0 +1,5 @@
+{
+  "args": "lint script.ts",
+  "output": "lint.out",
+  "exitCode": 1
+}

filename: tests/specs/lint/syntax_error_reporting/lint.out
patch: @@ -0,0 +1,16 @@
+warn: Unterminated string constant at [WILDCARD]script.ts:1:13
+
+  const foo = 'bar
+              ~~~~
+error[no-unused-vars]: `foo` is never used
+ --> [WILDCARD]script.ts:1:7
+  | 
+1 | const foo = 'bar
+  |       ^^^
+  = hint: If this is intentional, prefix it with an underscore like `_foo`
+
+  docs: https://lint.deno.land/rules/no-unused-vars
+
+
+Found 1 problem
+Checked 1 file

filename: tests/specs/lint/syntax_error_reporting/script.ts
patch: @@ -0,0 +1 @@
+const foo = 'bar
Repository: ggml-org/llama.cpp
Pull request: llama-graph : fix text position for mrope

Cont https://github.com/ggml-org/llama.cpp/pull/13138

I misunderstood the original code:

```cpp
        // TODO: add mrope pos ids somewhere else
        pos.resize(batch.n_tokens * 4);
        std::fill(pos.begin(), pos.end(), 0);
        for (int j = 0; j < batch.n_tokens * 3; j ++) {
            pos[j] = *st_pos_id + (j % batch.n_tokens);
        }
        batch.pos = pos.data();
```

Which means 3 first dims are the same, and 4th dim is 0, something like this:

`1234...1234...1234...0000...`

Thanks @mattjcly for spotting this!


Changed files:
filename: src/llama-graph.cpp
patch: @@ -55,13 +55,16 @@ void llm_graph_input_pos::set_input(const llama_ubatch * ubatch) {
     if (ubatch->pos && pos) {
         const int64_t n_tokens = ubatch->n_tokens;
 
-        if (ubatch->token && n_pos_per_embd > 1) {
+        if (ubatch->token && n_pos_per_embd == 4) {
             // in case we're using M-RoPE with text tokens, convert the 1D positions to 4D
-            // the other dimensions are all 0, they are unused for text tokens
-            std::vector<llama_pos> pos_data(n_tokens*n_pos_per_embd, 0);
+            // the 3 first dims are the same, and 4th dim is all 0
+            std::vector<llama_pos> pos_data(n_tokens*n_pos_per_embd);
             // copy the first dimension
             for (int i = 0; i < n_tokens; ++i) {
-                pos_data[i] = ubatch->pos[i];
+                pos_data[               i] = ubatch->pos[i];
+                pos_data[    n_tokens + i] = ubatch->pos[i];
+                pos_data[2 * n_tokens + i] = ubatch->pos[i];
+                pos_data[3 * n_tokens + i] = 0; // 4th dim is 0
             }
             ggml_backend_tensor_set(pos, pos_data.data(), 0, pos_data.size()*ggml_element_size(pos));
         } else {
Repository: ggml-org/llama.cpp
Pull request: clip : fix model size display

Fixes https://github.com/ggml-org/llama.cpp/issues/13147


Changed files:
filename: examples/llava/clip.cpp
patch: @@ -1574,7 +1574,7 @@ struct clip_model_loader {
     clip_ctx & ctx_clip;
     std::string fname;
 
-    size_t model_size; // in bytes
+    size_t model_size = 0; // in bytes
 
     // TODO @ngxson : we should not pass clip_ctx here, it should be clip_vision_model
     clip_model_loader(const char * fname, clip_ctx & ctx_clip) : ctx_clip(ctx_clip), fname(fname) {
@@ -1748,6 +1748,8 @@ struct clip_model_loader {
             LOG_INF("%s: minicpmv_version:   %d\n", __func__, ctx_clip.minicpmv_version);
             LOG_INF("%s: proj_scale_factor:  %d\n", __func__, hparams.proj_scale_factor);
             LOG_INF("%s: n_wa_pattern:       %d\n", __func__, hparams.n_wa_pattern);
+            LOG_INF("%s: use_silu:           %d\n", __func__, ctx_clip.use_silu);
+            LOG_INF("%s: use_gelu:           %d\n", __func__, ctx_clip.use_gelu);
             LOG_INF("%s: model size:         %.2f MiB\n", __func__, model_size / 1024.0 / 1024.0);
             LOG_INF("%s: metadata size:      %.2f MiB\n", __func__, ggml_get_mem_size(ctx_meta.get()) / 1024.0 / 1024.0);
         }
Repository: denoland/deno
Pull request: fix(lsp): scope attribution for asset documents

Fixes #24608.
Fixes https://github.com/denoland/vscode_deno/issues/1134.

Changed files:
filename: cli/lsp/documents.rs
patch: @@ -153,7 +153,7 @@ impl AssetOrDocument {
 
   pub fn scope(&self) -> Option<&ModuleSpecifier> {
     match self {
-      AssetOrDocument::Asset(_) => None,
+      AssetOrDocument::Asset(asset_doc) => Some(asset_doc.specifier()),
       AssetOrDocument::Document(doc) => doc.scope(),
     }
   }

filename: cli/tsc/99_main_compiler.js
patch: @@ -169,6 +169,10 @@ delete Object.prototype.__proto__;
 
   const isCjsCache = new SpecifierIsCjsCache();
 
+  // Maps asset specifiers to the first scope that the asset was loaded into.
+  /** @type {Map<string, string | null>} */
+  const assetScopes = new Map();
+
   /** @type {number | null} */
   let projectVersionCache = null;
 
@@ -837,6 +841,9 @@ delete Object.prototype.__proto__;
       }
       const sourceFile = sourceFileCache.get(specifier);
       if (sourceFile) {
+        if (!assetScopes.has(specifier)) {
+          assetScopes.set(specifier, lastRequestScope);
+        }
         // This case only occurs for assets.
         return ts.ScriptSnapshot.fromString(sourceFile.text);
       }
@@ -1210,6 +1217,7 @@ delete Object.prototype.__proto__;
       const newConfigsByScope = maybeChange[2];
       if (newConfigsByScope) {
         isNodeSourceFileCache.clear();
+        assetScopes.clear();
         /** @type { typeof languageServiceEntries.byScope } */
         const newByScope = new Map();
         for (const [scope, config] of newConfigsByScope) {
@@ -1247,6 +1255,12 @@ delete Object.prototype.__proto__;
       }
     }
 
+    // For requests pertaining to an asset document, we make it so that the
+    // passed scope is just its own specifier. We map it to an actual scope here
+    // based on the first scope that the asset was loaded into.
+    if (scope?.startsWith(ASSETS_URL_PREFIX)) {
+      scope = assetScopes.get(scope) ?? null;
+    }
     lastRequestMethod = method;
     lastRequestScope = scope;
     const ls = (scope ? languageServiceEntries.byScope.get(scope)?.ls : null) ??

filename: tests/integration/lsp_tests.rs
patch: @@ -1409,11 +1409,13 @@ fn lsp_hover() {
 #[test]
 fn lsp_hover_asset() {
   let context = TestContextBuilder::new().use_temp_cwd().build();
+  let temp_dir = context.temp_dir();
+  temp_dir.write("deno.json", json!({}).to_string());
   let mut client = context.new_lsp_command().build();
   client.initialize_default();
   client.did_open(json!({
     "textDocument": {
-      "uri": "file:///a/file.ts",
+      "uri": temp_dir.uri().join("file.ts").unwrap(),
       "languageId": "typescript",
       "version": 1,
       "text": "console.log(Date.now());\n"
@@ -1423,7 +1425,7 @@ fn lsp_hover_asset() {
     "textDocument/definition",
     json!({
       "textDocument": {
-        "uri": "file:///a/file.ts"
+        "uri": temp_dir.uri().join("file.ts").unwrap()
       },
       "position": { "line": 0, "character": 14 }
     }),
Repository: electron/electron
Pull request: fix: systemMediaPermissionDenied should not check camera perms when the request is asking for screen share

#### Description of Change
We are seeing a bug where `navigator.getUserMedia` is falsely reporting incorrect (`denied`) permissions when attempting to retrieve screen sharing permissions despite screen share TTC permissions being `allowed`. This bug is triggered when `camera` permissions are denied.

This PR changes the if statements so we only do this check when trying to return `getUserMedia` results for camera and microphone.



<!--
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]. -->

- [ ] PR description included and stakeholders cc'd
- [ ] `npm test` passes
- [ ] tests are [changed or added](https://github.com/electron/electron/blob/main/docs/development/testing.md)
- [ ] relevant documentation, tutorials, templates and examples are changed or added
- [ ] [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:  fixed bug where camera permissions affected screen sharing <!-- 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 -->


Changed files:
filename: shell/browser/web_contents_permission_helper.cc
patch: @@ -57,22 +57,23 @@ namespace {
 
 #if BUILDFLAG(IS_MAC)
 bool SystemMediaPermissionDenied(const content::MediaStreamRequest& request) {
-  if (request.audio_type != MediaStreamType::NO_SERVICE) {
+  if (request.audio_type == MediaStreamType::DEVICE_AUDIO_CAPTURE) {
     const auto system_audio_permission =
         system_media_permissions::CheckSystemAudioCapturePermission();
     return system_audio_permission ==
                system_media_permissions::SystemPermission::kRestricted ||
            system_audio_permission ==
                system_media_permissions::SystemPermission::kDenied;
   }
-  if (request.video_type != MediaStreamType::NO_SERVICE) {
+  if (request.video_type == MediaStreamType::DEVICE_VIDEO_CAPTURE) {
     const auto system_video_permission =
         system_media_permissions::CheckSystemVideoCapturePermission();
     return system_video_permission ==
                system_media_permissions::SystemPermission::kRestricted ||
            system_video_permission ==
                system_media_permissions::SystemPermission::kDenied;
   }
+
   return false;
 }
 #endif
Repository: huggingface/transformers
Pull request: update `kernels` to 0.4.3

# What does this PR do?
This makes sure we can disable the kernels if needed!

Changed files:
filename: setup.py
patch: @@ -130,7 +130,7 @@
     # Keras pin - this is to make sure Keras 3 doesn't destroy us. Remove or change when we have proper support.
     "keras>2.9,<2.16",
     "keras-nlp>=0.3.1,<0.14.0",  # keras-nlp 0.14 doesn't support keras 2, see pin on keras.
-    "kernels>=0.3.2,<0.4",
+    "kernels>=0.4.3,<0.5",
     "librosa",
     "natten>=0.14.6,<0.15.0",
     "nltk<=3.8.1",

filename: src/transformers/dependency_versions_table.py
patch: @@ -36,7 +36,7 @@
     "kenlm@git+https://github.com/ydshieh/kenlm@78f664fb3dafe1468d868d71faf19534530698d5": "kenlm@git+https://github.com/ydshieh/kenlm@78f664fb3dafe1468d868d71faf19534530698d5",
     "keras": "keras>2.9,<2.16",
     "keras-nlp": "keras-nlp>=0.3.1,<0.14.0",
-    "kernels": "kernels>=0.3.2,<0.4",
+    "kernels": "kernels>=0.4.3,<0.5",
     "librosa": "librosa",
     "natten": "natten>=0.14.6,<0.15.0",
     "nltk": "nltk<=3.8.1",
Repository: denoland/deno
Pull request: fix(npm): handle packages with only pre-released 0.0.0 versions

* https://github.com/denoland/deno_semver/pull/26

Closes https://github.com/denoland/deno/issues/24550

Changed files:
filename: Cargo.lock
patch: @@ -1910,9 +1910,9 @@ dependencies = [
 
 [[package]]
 name = "deno_semver"
-version = "0.5.6"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "389b5a8c2dd48cc1aad25396c92d7461ddb0fcfae1faf8e00205837c53e34d3e"
+checksum = "e23ce551a58eeefc05a48042a9c76d3409c96a1a6a522a82c4ced26930ece201"
 dependencies = [
  "monch",
  "once_cell",

filename: cli/Cargo.toml
patch: @@ -74,7 +74,7 @@ deno_lint = { version = "=0.60.1", features = ["docs"] }
 deno_lockfile.workspace = true
 deno_npm = "=0.21.4"
 deno_runtime = { workspace = true, features = ["include_js_files_for_snapshotting"] }
-deno_semver = "=0.5.6"
+deno_semver = "=0.5.7"
 deno_task_shell = "=0.17.0"
 deno_terminal.workspace = true
 eszip = "=0.72.2"
Repository: huggingface/transformers
Pull request: Fix Llama4 offset

# What does this PR do?

See title. It's the same as before + 1. Indeed, we need to add the +1 to match correctly the positions, it's also what is done in gemma2 here https://github.com/huggingface/transformers/blob/main/src/transformers/models/gemma2/modeling_gemma2.py#L912-L913 as it uses the length (which is equal to cache_position[-1] + 1).
I used `first_cache_position - attention_chunk_size + 1` here as I feel it simpler to understand when looking at the cache code (see the 1-offset here https://github.com/huggingface/transformers/blob/main/src/transformers/cache_utils.py#L1921-L1922), but it is striclty equal. I.e. we always have `max(first_cache_position - attention_chunk_size + 1, 0) == max(last_cache_position + 1 - key_length, 0)`

Changed files:
filename: src/transformers/models/llama4/modeling_llama4.py
patch: @@ -731,7 +731,6 @@ def _update_causal_mask(
         attention_chunk_size = self.config.attention_chunk_size
 
         first_cache_position = cache_position[0]
-        last_cache_position = cache_position[-1]
 
         if past_key_values is not None:
             full_cache_length = past_key_values.get_max_cache_shape() or sequence_length
@@ -754,7 +753,7 @@ def _update_causal_mask(
 
         if self.config._attn_implementation == "flex_attention":
             if isinstance(attention_mask, torch.Tensor):
-                offsets = (first_cache_position, max(last_cache_position - key_length, 0))
+                offsets = (first_cache_position, max(first_cache_position - attention_chunk_size + 1, 0))
                 chunked_attention_mask = make_flex_block_causal_mask(
                     attention_mask, self.config.attention_chunk_size, sequence_length, key_length, offsets=offsets
                 )
@@ -780,10 +779,8 @@ def _update_causal_mask(
             batch_size=input_tensor.shape[0],
         )
         if full_cache_length > self.config.attention_chunk_size:
-            start_idx = max(last_cache_position - key_length, 0)
-            end_idx = last_cache_position + 1 if sequence_length > 1 else last_cache_position
-            # We always need a mask of at least attention_chunk_size, so we use the max here
-            end_idx = max(end_idx, start_idx + attention_chunk_size)
+            start_idx = max(first_cache_position - attention_chunk_size + 1, 0)
+            end_idx = start_idx + key_length
             chunked_attention_mask = self.create_chunked_attention_mask(
                 self.config.attention_chunk_size,
                 start=start_idx,  # same offset as with flex
Repository: facebook/react
Pull request: Ensure react-is version used for resolution for playwright is installed

## Summary

In #22790, we added a custom yarn resolution for the `react-is` package so that when we ran React Devtools E2E tests using playwright, we wouldn't incorrectly use the top level version of `react-is` in this repo (which would fail because src code hasn't undergone transpilation), and instead use the actual packaged version from npm.

However, we noticed that when trying to run an internal build of devtools we were running into the following error:

![image](https://user-images.githubusercontent.com/1271509/143052360-349004c2-9129-4955-ad6d-6391510e8b7c.png)

The reason was that the package specified in the `resolutions` wasn't installed at all in the repo for some reason, so yarn couldn't find it.

To fix this, this commit makes it so we always install `react-is` from npm via our `resolutions`, instead of a specific version.

## How did you test this change?

- Locally in `react-devtools-inline`: `yarn test:e2e` works now (tests are running, but they are failing on main currently)
- Internally sync script can correctly build devtools now

Changed files:
filename: package.json
patch: @@ -148,6 +148,6 @@
     "download-build-in-codesandbox-ci": "cd scripts/release && yarn install && cd ../../ && yarn download-build-for-head || yarn build-combined --type=node react/index react-dom scheduler"
   },
   "resolutions": {
-    "**/@playwright/test/**/react-is": "^16.0.0"
+    "react-is": "npm:react-is"
   }
 }

filename: yarn.lock
patch: @@ -13629,10 +13629,10 @@ rc@^1.0.1, rc@^1.1.6, rc@^1.2.8:
     prop-types "^15.6.2"
     scheduler "^0.13.0"
 
-react-is@^16.0.0, react-is@^16.8.1:
-  version "16.13.1"
-  resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
-  integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
+react-is@^16.8.1, "react-is@npm:react-is":
+  version "17.0.2"
+  resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"
+  integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
 
 react-lifecycles-compat@^3.0.4:
   version "3.0.4"
Repository: electron/electron
Pull request: fix: systemMediaPermissionDenied should not check camera perms when the request is asking for screen share

Backport of #43517

See that PR for details.


Notes:  fixed bug where camera permissions affected screen sharing <!-- 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 -->


Changed files:
filename: shell/browser/web_contents_permission_helper.cc
patch: @@ -57,22 +57,23 @@ namespace {
 
 #if BUILDFLAG(IS_MAC)
 bool SystemMediaPermissionDenied(const content::MediaStreamRequest& request) {
-  if (request.audio_type != MediaStreamType::NO_SERVICE) {
+  if (request.audio_type == MediaStreamType::DEVICE_AUDIO_CAPTURE) {
     const auto system_audio_permission =
         system_media_permissions::CheckSystemAudioCapturePermission();
     return system_audio_permission ==
                system_media_permissions::SystemPermission::kRestricted ||
            system_audio_permission ==
                system_media_permissions::SystemPermission::kDenied;
   }
-  if (request.video_type != MediaStreamType::NO_SERVICE) {
+  if (request.video_type == MediaStreamType::DEVICE_VIDEO_CAPTURE) {
     const auto system_video_permission =
         system_media_permissions::CheckSystemVideoCapturePermission();
     return system_video_permission ==
                system_media_permissions::SystemPermission::kRestricted ||
            system_video_permission ==
                system_media_permissions::SystemPermission::kDenied;
   }
+
   return false;
 }
 #endif
Repository: huggingface/transformers
Pull request: Handle torch ver in flexattn

Follow up #37399

@ArthurZucker 

Changed files:
filename: src/transformers/integrations/flex_attention.py
patch: @@ -29,6 +29,7 @@
 from typing import Optional, Tuple, Union
 
 import torch
+from packaging import version
 
 from ..utils import is_torch_flex_attn_available
 from ..utils.import_utils import _torch_version
@@ -66,7 +67,7 @@ def __init__(self, training):
             # cause errors. The suggested fix is to compile with "max-autotune-no-cudagraphs"
             # see https://github.com/pytorch/pytorch/issues/146260 for training
             self.training = training
-            if _torch_version.split("+")[0] == "2.6.0" and training:
+            if version.parse(_torch_version).base_version == "2.6.0" and training:
                 self._compiled_flex_attention = torch.compile(
                     flex_attention, dynamic=False, mode="max-autotune-no-cudagraphs"
                 )
Repository: nodejs/node
Pull request: meta: move one or more collaborators to emeritus

This PR was generated by tools/find-inactive-collaborators.yml.

Changed files:
filename: README.md
patch: @@ -444,8 +444,6 @@ For information about the governance of the Node.js project, see
   **Khaidi Chu** <<i@2333.moe>> (he/him)
 * [yashLadha](https://github.com/yashLadha) -
   **Yash Ladha** <<yash@yashladha.in>> (he/him)
-* [yosuke-furukawa](https://github.com/yosuke-furukawa) -
-  **Yosuke Furukawa** <<yosuke.furukawa@gmail.com>>
 * [ZYSzys](https://github.com/ZYSzys) -
   **Yongsheng Zhang** <<zyszys98@gmail.com>> (he/him)
 
@@ -632,6 +630,8 @@ For information about the governance of the Node.js project, see
   **Yihong Wang** <<yh.wang@ibm.com>>
 * [yorkie](https://github.com/yorkie) -
   **Yorkie Liu** <<yorkiefixer@gmail.com>>
+* [yosuke-furukawa](https://github.com/yosuke-furukawa) -
+  **Yosuke Furukawa** <<yosuke.furukawa@gmail.com>>
 
 </details>
Repository: denoland/deno
Pull request: fix(ext/console): Error Cause Not Inspect-Formatted when printed

This pull request addresses an issue where the Error.cause property was not formatted correctly when printed using console.log, leading to confusion.

solution:
Implemented a fix to ensure that Error.cause is formatted properly when printed by console.log, and the fix done by using  JSON.stringify

This PR fixes https://github.com/denoland/deno/issues/23416


Changed files:
filename: ext/console/01_console.js
patch: @@ -1484,12 +1484,18 @@ function inspectError(value, ctx) {
       finalMessage += `[${stack || ErrorPrototypeToString(value)}]`;
     }
   }
+  const doubleQuoteRegExp = new SafeRegExp('"', "g");
   finalMessage += ArrayPrototypeJoin(
     ArrayPrototypeMap(
       causes,
       (cause) =>
         "\nCaused by " + (MapPrototypeGet(refMap, cause) ?? "") +
-        (cause?.stack ?? cause),
+        (cause?.stack ??
+          StringPrototypeReplace(
+            inspect(cause),
+            doubleQuoteRegExp,
+            "",
+          )),
     ),
     "",
   );

filename: tests/unit/console_test.ts
patch: @@ -2206,6 +2206,22 @@ Deno.test(function inspectErrorCircular() {
   );
 });
 
+Deno.test(function inspectErrorWithCauseFormat() {
+  const error = new Error("This is an error", {
+    cause: {
+      code: 100500,
+    },
+  });
+  assertStringIncludes(
+    stripColor(Deno.inspect(error)),
+    "Error: This is an error",
+  );
+  assertStringIncludes(
+    stripColor(Deno.inspect(error)),
+    "Caused by { code: 100500 }",
+  );
+});
+
 Deno.test(function inspectColors() {
   assertEquals(Deno.inspect(1), "1");
   assertStringIncludes(Deno.inspect(1, { colors: true }), "\x1b[");