ipython / ipython/ipykernel

Suggestion: append info about code block number in filename

Open
#716 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
734
Forks
412
Avg merge
1d 5h
Merged PRs (30d)
8

Description

When using IPython, the "filename" contains the number information of the code block that contains it; this is something of the form `` where `N` is the code block number.
![image](https://user-images.githubusercontent.com/629698/125211587-bfb48400-e27d-11eb-9a17-32f9d488aaa4.png)

When actual temporary files are used in the ipykernel, the names created on https://github.com/ipython/ipykernel/blob/b2f1a79f64c49a1c54f2e7c79c062d6b347b9bf0/ipykernel/compiler.py#L50 lose that information.
My suggestion would be to append `_number` to the filename where `number` is the code block number. So, instead of `path/to/filename.py` one would have `path/to/filename_number.py`. This would enable a human reader to identify which code block is involved in the traceback.

Additionally, while it is currently possible to programmatically obtain the information and having a "filename" much more understable, as demonstrated in the image below, there can be some ambiguity if the exact same content appears in two code blocks, one of which appearing in a traceback (as shown in the second traceback in the image below).

Adding the `_number` would remove this ambiguity.
![image](https://user-images.githubusercontent.com/629698/125211724-ce4f6b00-e27e-11eb-8d5c-07e6a8e90ff3.png)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.