From d46348a55b83b73fa9447ed901a70e8562eae8e6 Mon Sep 17 00:00:00 2001 From: Aaron Munger <2019016+amunger@users.noreply.github.com> Date: Sat, 21 Jun 2025 00:40:52 -0700 Subject: [PATCH] Revert "fix output links for IPython 9 (#248349)" (#252017) This reverts commit e5ddb82cdc9fdc9b6cff4004ca124a14f9a31359. --- extensions/notebook-renderers/src/stackTraceHelper.ts | 6 ++---- .../notebook-renderers/src/test/stackTraceHelper.test.ts | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/extensions/notebook-renderers/src/stackTraceHelper.ts b/extensions/notebook-renderers/src/stackTraceHelper.ts index a517273ae21..d0d03c20441 100644 --- a/extensions/notebook-renderers/src/stackTraceHelper.ts +++ b/extensions/notebook-renderers/src/stackTraceHelper.ts @@ -32,10 +32,8 @@ export function formatStackTrace(stack: string, trustHtml: boolean): { formatted const formatSequence = /\u001b\[.+?m/g; const fileRegex = /File\s+(?:\u001b\[.+?m)?(.+):(\d+)/; -// look for the "--->" before a line number -const lineNumberRegex = /^((?:\u001b\[.+?m|\s)*[-]+>(?:\u001b\[.+?m|\s)*)(\d+)(?:\u001b\[.+?m)*( .*)/; -// just capturing parts of "Cell In[3], line 2" with lots of formatting in between -const cellRegex = /(?(?:\u001b\[.+?m)*Cell(?:\u001b\[.+?m|\s)*In(?:\u001b\[.+?m|\s)*\[(?\d+)\](?:\u001b\[.+?m|\s|,)+)(?line (?\d+)).*/; +const lineNumberRegex = /^((?:\u001b\[.+?m)?[ \->]+?)(\d+)(?:\u001b\[0m)?( .*)/; +const cellRegex = /(?Cell\s+(?:\u001b\[.+?m)?In\s*\[(?\d+)\],\s*)(?line (?\d+)).*/; // older versions of IPython ~8.3.0 const inputRegex = /(?Input\s+?(?:\u001b\[.+?m)(?In\s*\[(?\d+)\]))(?.*)/; diff --git a/extensions/notebook-renderers/src/test/stackTraceHelper.test.ts b/extensions/notebook-renderers/src/test/stackTraceHelper.test.ts index 1b29ce6818f..41f7d10f9c8 100644 --- a/extensions/notebook-renderers/src/test/stackTraceHelper.test.ts +++ b/extensions/notebook-renderers/src/test/stackTraceHelper.test.ts @@ -45,7 +45,7 @@ suite('StackTraceHelper', () => { assert.equal(errorLocation, 'line 2'); }); - test('IPython stack line numbers are linkified for IPython 9.0.0', () => { + test.skip('IPython stack line numbers are linkified for IPython 9.0.0', () => { const stack = '\u001b[31m---------------------------------------------------------------------------\u001b[39m\n' + '\u001b[31mTypeError\u001b[39m Traceback (most recent call last)\n' +