diff --git a/.changeset/odd-dancers-sleep.md b/.changeset/odd-dancers-sleep.md new file mode 100644 index 000000000000..9e717c03d4ea --- /dev/null +++ b/.changeset/odd-dancers-sleep.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: wrap `$inspect` error logging in `console.group` diff --git a/packages/svelte/src/internal/client/dev/inspect.js b/packages/svelte/src/internal/client/dev/inspect.js index e15c66901c5f..c99479dfcf61 100644 --- a/packages/svelte/src/internal/client/dev/inspect.js +++ b/packages/svelte/src/internal/client/dev/inspect.js @@ -24,8 +24,11 @@ export function inspect(get_value, inspector = console.log) { try { value = get_value(); } catch (error) { - // eslint-disable-next-line no-console + /* eslint-disable no-console */ + console.group(`an error occurred when reading values inside an \`$inspect\`: `); console.error(error); + console.groupEnd(); + /* eslint-enable no-console */ } if (value !== UNINITIALIZED) { diff --git a/packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js b/packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js index e155ff236a48..2f679000e020 100644 --- a/packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js @@ -12,6 +12,13 @@ export default test({ flushSync(); assert.ok(errors.length > 0); - assert.deepEqual(logs, ['init', 'a', 'init', 'b']); + assert.deepEqual(logs, [ + 'init', + 'a', + 'init', + 'b', + 'an error occurred when reading values inside an `$inspect`: ', + 'an error occurred when reading values inside an `$inspect`: ' + ]); } });