docs: add dedicated Jupyter Notebooks guide#5009
Merged
Conversation
Add a comprehensive guide for using Black with Jupyter Notebooks, consolidating information that was previously scattered across getting_started.md, the_basics.md, and faq.md. The new guide covers: - Installation with the jupyter extra - Basic usage and stdin formatting - How Black handles notebook cells - Cell magics and custom python cell magics - Which cells Black skips and why - Editor integration (VS Code, JupyterLab) - Pre-commit hook configuration Also adds a cross-reference from getting_started.md to the new guide. Fixes psf#4967 Signed-off-by: edvatar <88481784+toroleapinc@users.noreply.github.com>
for more information, see https://pre-commit.ci
This was referenced Mar 2, 2026
- Clean up the guide page - Clean up the GHA page & link to the Jupyter page - Link to the Jupyter page on the pre-commit page, the `--python-cell-magics` docs, the FAQ - Modify scripts/check_pre_commit_rev_in_example.py to check all codeblocks in a file, not just the first one, and to check using_black_with_jupyter_notebooks as well - Add a changelog entry Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: cobalt <61329810+cobaltt7@users.noreply.github.com> Co-authored-by: Varun Chawla <34209028+veeceey@users.noreply.github.com> Co-authored-by: Akash <jainaakash303@gmail.com> Co-authored-by: edvatar <88481784+toroleapinc@users.noreply.github.com> Signed-off-by: cobalt <61329810+cobaltt7@users.noreply.github.com>
Signed-off-by: cobalt <61329810+cobaltt7@users.noreply.github.com>
luketainton
pushed a commit
to luketainton/repos_webexmemebot
that referenced
this pull request
Mar 6, 2026
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [black](https://github.com/psf/black) ([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) | `<26.1.1,>=26.1.0` → `<26.3.1,>=26.3.0` |  |  | --- ### Release Notes <details> <summary>psf/black (black)</summary> ### [`v26.3.0`](https://github.com/psf/black/blob/HEAD/CHANGES.md#2630) [Compare Source](psf/black@26.1.0...26.3.0) ##### Stable style - Don't double-decode input, causing non-UTF-8 files to be corrupted ([#​4964](psf/black#4964)) - Fix crash on standalone comment in lambda default arguments ([#​4993](psf/black#4993)) - Preserve parentheses when `# type: ignore` comments would be merged with other comments on the same line, preventing AST equivalence failures ([#​4888](psf/black#4888)) ##### Preview style - Fix bug where `if` guards in `case` blocks were incorrectly split when the pattern had a trailing comma ([#​4884](psf/black#4884)) - Fix `string_processing` crashing on unassigned long string literals with trailing commas (one-item tuples) ([#​4929](psf/black#4929)) - Simplify implementation of the power operator "hugging" logic ([#​4918](psf/black#4918)) ##### Packaging - Fix shutdown errors in PyInstaller builds on macOS by disabling multiprocessing in frozen environments ([#​4930](psf/black#4930)) ##### Performance - Introduce winloop for windows as an alternative to uvloop ([#​4996](psf/black#4996)) - Remove deprecated function `uvloop.install()` in favor of `uvloop.new_event_loop()` ([#​4996](psf/black#4996)) - Rename `maybe_install_uvloop` function to `maybe_use_uvloop` to simplify loop installation and creation of either a uvloop/winloop evenloop or default eventloop ([#​4996](psf/black#4996)) ##### Output - Emit a clear warning when the target Python version is newer than the running Python version, since AST safety checks cannot parse newer syntax. Also replace the misleading "INTERNAL ERROR" message with an actionable error explaining the version mismatch ([#​4983](psf/black#4983)) ##### *Blackd* - Introduce winloop to be used when windows in use which enables blackd to run faster on windows when winloop is installed. ([#​4996](psf/black#4996)) ##### Integrations - Remove unused gallery script ([#​5030](psf/black#5030)) - Harden parsing of `black` requirements in the GitHub Action when `use_pyproject` is enabled so that only version specifiers are accepted and direct references such as `black @​ https://...` are rejected. Users should upgrade to the latest version of the action as soon as possible. This update is received automatically when using `psf/black@stable`, and is independent of the version of Black installed by the action. ([#​5031](psf/black#5031)) ##### Documentation - Expand preview style documentation with detailed examples for `wrap_comprehension_in`, `simplify_power_operator_hugging`, and `wrap_long_dict_values_in_parens` features ([#​4987](psf/black#4987)) - Add detailed documentation for formatting Jupyter Notebooks ([#​5009](psf/black#5009)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OC4wIiwidXBkYXRlZEluVmVyIjoiNDMuNTguMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsidHlwZS9kZXBlbmRlbmNpZXMiXX0=--> Reviewed-on: https://git.tainton.uk/repos/webexmemebot/pulls/571 Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk> Co-committed-by: renovate[bot] <renovate-bot@git.tainton.uk>
luketainton
pushed a commit
to luketainton/repos_pypilot
that referenced
this pull request
Mar 6, 2026
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [black](https://github.com/psf/black) ([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) | `<26.1.1,>=26.1.0` → `<26.3.1,>=26.3.0` |  |  | --- ### Release Notes <details> <summary>psf/black (black)</summary> ### [`v26.3.0`](https://github.com/psf/black/blob/HEAD/CHANGES.md#2630) [Compare Source](psf/black@26.1.0...26.3.0) ##### Stable style - Don't double-decode input, causing non-UTF-8 files to be corrupted ([#​4964](psf/black#4964)) - Fix crash on standalone comment in lambda default arguments ([#​4993](psf/black#4993)) - Preserve parentheses when `# type: ignore` comments would be merged with other comments on the same line, preventing AST equivalence failures ([#​4888](psf/black#4888)) ##### Preview style - Fix bug where `if` guards in `case` blocks were incorrectly split when the pattern had a trailing comma ([#​4884](psf/black#4884)) - Fix `string_processing` crashing on unassigned long string literals with trailing commas (one-item tuples) ([#​4929](psf/black#4929)) - Simplify implementation of the power operator "hugging" logic ([#​4918](psf/black#4918)) ##### Packaging - Fix shutdown errors in PyInstaller builds on macOS by disabling multiprocessing in frozen environments ([#​4930](psf/black#4930)) ##### Performance - Introduce winloop for windows as an alternative to uvloop ([#​4996](psf/black#4996)) - Remove deprecated function `uvloop.install()` in favor of `uvloop.new_event_loop()` ([#​4996](psf/black#4996)) - Rename `maybe_install_uvloop` function to `maybe_use_uvloop` to simplify loop installation and creation of either a uvloop/winloop evenloop or default eventloop ([#​4996](psf/black#4996)) ##### Output - Emit a clear warning when the target Python version is newer than the running Python version, since AST safety checks cannot parse newer syntax. Also replace the misleading "INTERNAL ERROR" message with an actionable error explaining the version mismatch ([#​4983](psf/black#4983)) ##### *Blackd* - Introduce winloop to be used when windows in use which enables blackd to run faster on windows when winloop is installed. ([#​4996](psf/black#4996)) ##### Integrations - Remove unused gallery script ([#​5030](psf/black#5030)) - Harden parsing of `black` requirements in the GitHub Action when `use_pyproject` is enabled so that only version specifiers are accepted and direct references such as `black @​ https://...` are rejected. Users should upgrade to the latest version of the action as soon as possible. This update is received automatically when using `psf/black@stable`, and is independent of the version of Black installed by the action. ([#​5031](psf/black#5031)) ##### Documentation - Expand preview style documentation with detailed examples for `wrap_comprehension_in`, `simplify_power_operator_hugging`, and `wrap_long_dict_values_in_parens` features ([#​4987](psf/black#4987)) - Add detailed documentation for formatting Jupyter Notebooks ([#​5009](psf/black#5009)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OC4wIiwidXBkYXRlZEluVmVyIjoiNDMuNTguMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsidHlwZS9kZXBlbmRlbmNpZXMiXX0=--> Reviewed-on: https://git.tainton.uk/repos/pypilot/pulls/421 Reviewed-by: Luke Tainton <luke@tainton.uk> Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk> Co-committed-by: renovate[bot] <renovate-bot@git.tainton.uk>
luketainton
pushed a commit
to luketainton/luke_instant-msg-api
that referenced
this pull request
Mar 6, 2026
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [black](https://github.com/psf/black) ([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) | `<26.1.1,>=26.1.0` → `<26.3.1,>=26.3.0` |  |  | --- ### Release Notes <details> <summary>psf/black (black)</summary> ### [`v26.3.0`](https://github.com/psf/black/blob/HEAD/CHANGES.md#2630) [Compare Source](psf/black@26.1.0...26.3.0) ##### Stable style - Don't double-decode input, causing non-UTF-8 files to be corrupted ([#​4964](psf/black#4964)) - Fix crash on standalone comment in lambda default arguments ([#​4993](psf/black#4993)) - Preserve parentheses when `# type: ignore` comments would be merged with other comments on the same line, preventing AST equivalence failures ([#​4888](psf/black#4888)) ##### Preview style - Fix bug where `if` guards in `case` blocks were incorrectly split when the pattern had a trailing comma ([#​4884](psf/black#4884)) - Fix `string_processing` crashing on unassigned long string literals with trailing commas (one-item tuples) ([#​4929](psf/black#4929)) - Simplify implementation of the power operator "hugging" logic ([#​4918](psf/black#4918)) ##### Packaging - Fix shutdown errors in PyInstaller builds on macOS by disabling multiprocessing in frozen environments ([#​4930](psf/black#4930)) ##### Performance - Introduce winloop for windows as an alternative to uvloop ([#​4996](psf/black#4996)) - Remove deprecated function `uvloop.install()` in favor of `uvloop.new_event_loop()` ([#​4996](psf/black#4996)) - Rename `maybe_install_uvloop` function to `maybe_use_uvloop` to simplify loop installation and creation of either a uvloop/winloop evenloop or default eventloop ([#​4996](psf/black#4996)) ##### Output - Emit a clear warning when the target Python version is newer than the running Python version, since AST safety checks cannot parse newer syntax. Also replace the misleading "INTERNAL ERROR" message with an actionable error explaining the version mismatch ([#​4983](psf/black#4983)) ##### *Blackd* - Introduce winloop to be used when windows in use which enables blackd to run faster on windows when winloop is installed. ([#​4996](psf/black#4996)) ##### Integrations - Remove unused gallery script ([#​5030](psf/black#5030)) - Harden parsing of `black` requirements in the GitHub Action when `use_pyproject` is enabled so that only version specifiers are accepted and direct references such as `black @​ https://...` are rejected. Users should upgrade to the latest version of the action as soon as possible. This update is received automatically when using `psf/black@stable`, and is independent of the version of Black installed by the action. ([#​5031](psf/black#5031)) ##### Documentation - Expand preview style documentation with detailed examples for `wrap_comprehension_in`, `simplify_power_operator_hugging`, and `wrap_long_dict_values_in_parens` features ([#​4987](psf/black#4987)) - Add detailed documentation for formatting Jupyter Notebooks ([#​5009](psf/black#5009)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OC4wIiwidXBkYXRlZEluVmVyIjoiNDMuNTguMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsidHlwZS9kZXBlbmRlbmNpZXMiXX0=--> Reviewed-on: https://git.tainton.uk/luke/instant-msg-api/pulls/246 Reviewed-by: Luke Tainton <luke@tainton.uk> Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk> Co-committed-by: renovate[bot] <renovate-bot@git.tainton.uk>
luketainton
pushed a commit
to luketainton/repos_epage
that referenced
this pull request
Mar 6, 2026
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [black](https://github.com/psf/black) ([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) | `<26.1.1,>=26.1.0` → `<26.3.1,>=26.3.0` |  |  | --- ### Release Notes <details> <summary>psf/black (black)</summary> ### [`v26.3.0`](https://github.com/psf/black/blob/HEAD/CHANGES.md#2630) [Compare Source](psf/black@26.1.0...26.3.0) ##### Stable style - Don't double-decode input, causing non-UTF-8 files to be corrupted ([#​4964](psf/black#4964)) - Fix crash on standalone comment in lambda default arguments ([#​4993](psf/black#4993)) - Preserve parentheses when `# type: ignore` comments would be merged with other comments on the same line, preventing AST equivalence failures ([#​4888](psf/black#4888)) ##### Preview style - Fix bug where `if` guards in `case` blocks were incorrectly split when the pattern had a trailing comma ([#​4884](psf/black#4884)) - Fix `string_processing` crashing on unassigned long string literals with trailing commas (one-item tuples) ([#​4929](psf/black#4929)) - Simplify implementation of the power operator "hugging" logic ([#​4918](psf/black#4918)) ##### Packaging - Fix shutdown errors in PyInstaller builds on macOS by disabling multiprocessing in frozen environments ([#​4930](psf/black#4930)) ##### Performance - Introduce winloop for windows as an alternative to uvloop ([#​4996](psf/black#4996)) - Remove deprecated function `uvloop.install()` in favor of `uvloop.new_event_loop()` ([#​4996](psf/black#4996)) - Rename `maybe_install_uvloop` function to `maybe_use_uvloop` to simplify loop installation and creation of either a uvloop/winloop evenloop or default eventloop ([#​4996](psf/black#4996)) ##### Output - Emit a clear warning when the target Python version is newer than the running Python version, since AST safety checks cannot parse newer syntax. Also replace the misleading "INTERNAL ERROR" message with an actionable error explaining the version mismatch ([#​4983](psf/black#4983)) ##### *Blackd* - Introduce winloop to be used when windows in use which enables blackd to run faster on windows when winloop is installed. ([#​4996](psf/black#4996)) ##### Integrations - Remove unused gallery script ([#​5030](psf/black#5030)) - Harden parsing of `black` requirements in the GitHub Action when `use_pyproject` is enabled so that only version specifiers are accepted and direct references such as `black @​ https://...` are rejected. Users should upgrade to the latest version of the action as soon as possible. This update is received automatically when using `psf/black@stable`, and is independent of the version of Black installed by the action. ([#​5031](psf/black#5031)) ##### Documentation - Expand preview style documentation with detailed examples for `wrap_comprehension_in`, `simplify_power_operator_hugging`, and `wrap_long_dict_values_in_parens` features ([#​4987](psf/black#4987)) - Add detailed documentation for formatting Jupyter Notebooks ([#​5009](psf/black#5009)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OC4wIiwidXBkYXRlZEluVmVyIjoiNDMuNTguMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsidHlwZS9kZXBlbmRlbmNpZXMiXX0=--> Reviewed-on: https://git.tainton.uk/repos/epage/pulls/208 Reviewed-by: Luke Tainton <luke@tainton.uk> Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk> Co-committed-by: renovate[bot] <renovate-bot@git.tainton.uk>
luketainton
pushed a commit
to luketainton/repos_PwnedPW
that referenced
this pull request
Mar 6, 2026
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [black](https://github.com/psf/black) ([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) | `<26.1.1,>=26.1.0` → `<26.3.1,>=26.3.0` |  |  | --- ### Release Notes <details> <summary>psf/black (black)</summary> ### [`v26.3.0`](https://github.com/psf/black/blob/HEAD/CHANGES.md#2630) [Compare Source](psf/black@26.1.0...26.3.0) ##### Stable style - Don't double-decode input, causing non-UTF-8 files to be corrupted ([#​4964](psf/black#4964)) - Fix crash on standalone comment in lambda default arguments ([#​4993](psf/black#4993)) - Preserve parentheses when `# type: ignore` comments would be merged with other comments on the same line, preventing AST equivalence failures ([#​4888](psf/black#4888)) ##### Preview style - Fix bug where `if` guards in `case` blocks were incorrectly split when the pattern had a trailing comma ([#​4884](psf/black#4884)) - Fix `string_processing` crashing on unassigned long string literals with trailing commas (one-item tuples) ([#​4929](psf/black#4929)) - Simplify implementation of the power operator "hugging" logic ([#​4918](psf/black#4918)) ##### Packaging - Fix shutdown errors in PyInstaller builds on macOS by disabling multiprocessing in frozen environments ([#​4930](psf/black#4930)) ##### Performance - Introduce winloop for windows as an alternative to uvloop ([#​4996](psf/black#4996)) - Remove deprecated function `uvloop.install()` in favor of `uvloop.new_event_loop()` ([#​4996](psf/black#4996)) - Rename `maybe_install_uvloop` function to `maybe_use_uvloop` to simplify loop installation and creation of either a uvloop/winloop evenloop or default eventloop ([#​4996](psf/black#4996)) ##### Output - Emit a clear warning when the target Python version is newer than the running Python version, since AST safety checks cannot parse newer syntax. Also replace the misleading "INTERNAL ERROR" message with an actionable error explaining the version mismatch ([#​4983](psf/black#4983)) ##### *Blackd* - Introduce winloop to be used when windows in use which enables blackd to run faster on windows when winloop is installed. ([#​4996](psf/black#4996)) ##### Integrations - Remove unused gallery script ([#​5030](psf/black#5030)) - Harden parsing of `black` requirements in the GitHub Action when `use_pyproject` is enabled so that only version specifiers are accepted and direct references such as `black @​ https://...` are rejected. Users should upgrade to the latest version of the action as soon as possible. This update is received automatically when using `psf/black@stable`, and is independent of the version of Black installed by the action. ([#​5031](psf/black#5031)) ##### Documentation - Expand preview style documentation with detailed examples for `wrap_comprehension_in`, `simplify_power_operator_hugging`, and `wrap_long_dict_values_in_parens` features ([#​4987](psf/black#4987)) - Add detailed documentation for formatting Jupyter Notebooks ([#​5009](psf/black#5009)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OC4wIiwidXBkYXRlZEluVmVyIjoiNDMuNTguMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsibGludGluZyJdfQ==--> Reviewed-on: https://git.tainton.uk/repos/PwnedPW/pulls/326 Reviewed-by: Luke Tainton <luke@tainton.uk> Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk> Co-committed-by: renovate[bot] <renovate-bot@git.tainton.uk>
luketainton
pushed a commit
to luketainton/repos_roboluke
that referenced
this pull request
Mar 6, 2026
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [black](https://github.com/psf/black) ([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) | `<26.1.1,>=26.1.0` → `<26.3.1,>=26.3.0` |  |  | --- ### Release Notes <details> <summary>psf/black (black)</summary> ### [`v26.3.0`](https://github.com/psf/black/blob/HEAD/CHANGES.md#2630) [Compare Source](psf/black@26.1.0...26.3.0) ##### Stable style - Don't double-decode input, causing non-UTF-8 files to be corrupted ([#​4964](psf/black#4964)) - Fix crash on standalone comment in lambda default arguments ([#​4993](psf/black#4993)) - Preserve parentheses when `# type: ignore` comments would be merged with other comments on the same line, preventing AST equivalence failures ([#​4888](psf/black#4888)) ##### Preview style - Fix bug where `if` guards in `case` blocks were incorrectly split when the pattern had a trailing comma ([#​4884](psf/black#4884)) - Fix `string_processing` crashing on unassigned long string literals with trailing commas (one-item tuples) ([#​4929](psf/black#4929)) - Simplify implementation of the power operator "hugging" logic ([#​4918](psf/black#4918)) ##### Packaging - Fix shutdown errors in PyInstaller builds on macOS by disabling multiprocessing in frozen environments ([#​4930](psf/black#4930)) ##### Performance - Introduce winloop for windows as an alternative to uvloop ([#​4996](psf/black#4996)) - Remove deprecated function `uvloop.install()` in favor of `uvloop.new_event_loop()` ([#​4996](psf/black#4996)) - Rename `maybe_install_uvloop` function to `maybe_use_uvloop` to simplify loop installation and creation of either a uvloop/winloop evenloop or default eventloop ([#​4996](psf/black#4996)) ##### Output - Emit a clear warning when the target Python version is newer than the running Python version, since AST safety checks cannot parse newer syntax. Also replace the misleading "INTERNAL ERROR" message with an actionable error explaining the version mismatch ([#​4983](psf/black#4983)) ##### *Blackd* - Introduce winloop to be used when windows in use which enables blackd to run faster on windows when winloop is installed. ([#​4996](psf/black#4996)) ##### Integrations - Remove unused gallery script ([#​5030](psf/black#5030)) - Harden parsing of `black` requirements in the GitHub Action when `use_pyproject` is enabled so that only version specifiers are accepted and direct references such as `black @​ https://...` are rejected. Users should upgrade to the latest version of the action as soon as possible. This update is received automatically when using `psf/black@stable`, and is independent of the version of Black installed by the action. ([#​5031](psf/black#5031)) ##### Documentation - Expand preview style documentation with detailed examples for `wrap_comprehension_in`, `simplify_power_operator_hugging`, and `wrap_long_dict_values_in_parens` features ([#​4987](psf/black#4987)) - Add detailed documentation for formatting Jupyter Notebooks ([#​5009](psf/black#5009)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41OC4wIiwidXBkYXRlZEluVmVyIjoiNDMuNTguMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsidHlwZS9kZXBlbmRlbmNpZXMiXX0=--> Reviewed-on: https://git.tainton.uk/repos/roboluke/pulls/431 Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk> Co-committed-by: renovate[bot] <renovate-bot@git.tainton.uk>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a comprehensive guide for using Black with Jupyter Notebooks, consolidating information that was previously scattered across multiple documentation pages.
Changes
docs/guides/using_black_with_jupyter_notebooks.md— a dedicated guide covering:jupyterextra--ipynb--python-cell-magics)black-jupyterhook)docs/guides/index.md— added the new guide to the toctree and listingdocs/getting_started.md— added a cross-reference to the new guideMotivation
As described in #4967, there is no single page explaining how to set up, configure, and use Black with Jupyter Notebooks. The Jupyter information is scattered across the installation page, the basics page, and the FAQ. This PR creates a centralized guide that users can find when looking for Jupyter-specific information.
Fixes #4967
Closes #4971
Closes #4985