Paste the output from running `jupyter troubleshoot` from the command line here.
You may want to sanitize the paths in the output.
Command Line Output
Paste the output from your command line running `jupyter notebook` here, use `--debug` if possible.
Browser Output
Paste the output from your browser Javascript console here, if applicable.
================================================
FILE: .github/ISSUE_TEMPLATE/config.yml
================================================
blank_issues_enabled: false
contact_links:
- name: Is this a common issue? See our Docs.
url: https://jupyter-notebook.readthedocs.io/en/latest/troubleshooting.html#what-to-do-when-things-go-wrong
about: Before opening an issue, make sure your issue hasn't already been addressed in the documentation.
- name: 🤔 Support and all other questions, including if you're not sure what to do.
url: https://discourse.jupyter.org/c/notebook/31
about: If you have a question or you're having issues installing Jupyter Notebook, try posting on Discourse.
- name: 💬 Chat with the devs
url: https://jupyter.zulipchat.com/
about: Ask short questions about using Jupyter Notebook
- name: 📝 Do you have a feature request that may be applied upstream? See JupyterLab.
url: https://github.com/jupyterlab/jupyterlab
about: We recommend that you cross-reference JupyterLab for information when requesting new features and support for Notebook 7. We won't likely accept new features for Jupyter Notebook 6.x.
================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: "\U0001F680 Feature Request"
about: Suggest a new feature or a change
labels: enhancement, status:Needs Triage
---
### Problem
### Proposed Solution
### Additional context
================================================
FILE: .github/actions/build-dist/action.yml
================================================
name: 'Build Jupyter Notebook'
description: 'Build Jupyter Notebook from source'
runs:
using: 'composite'
steps:
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Install dependencies
shell: bash
run: |
python -m pip install hatch
- name: Build pypi distributions
shell: bash
run: |
hatch build
- name: Build npm distributions
shell: bash
run: |
mkdir pkgs
hatch run npm_pack
cp packages/*/*.tgz pkgs
- name: Build checksum file
shell: bash
run: |
cd dist
sha256sum * | tee SHA256SUMS
cd ../pkgs
sha256sum * | tee SHA256SUMS
- name: Upload distributions
uses: actions/upload-artifact@v4
with:
name: notebook-dist-${{ github.run_number }}
path: ./dist
- name: Upload distributions
uses: actions/upload-artifact@v4
with:
name: notebook-pkgs-${{ github.run_number }}
path: ./pkgs
================================================
FILE: .github/answered.yml
================================================
# This action automatically schedules issues to be closed that have been
# labeled as answered if there is no activity on them for 30 days. This takes
# care of the common usecase of an issue being answered to the best of our
# ability and no other follow-up from the submitter.
name: 'Close answered issues'
on:
schedule:
- cron: '30 1 * * *'
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v3
with:
skip-stale-issue-message: true
days-before-stale: 30
days-before-close: 7
stale-issue-label: 'status:Closing as Answered'
only-issue-labels: 'status:Answered'
================================================
FILE: .github/dependabot.yml
================================================
version: 2
updates:
- package-ecosystem: 'github-actions'
directory: '/'
schedule:
interval: 'weekly'
groups:
actions:
patterns:
- "*"
- package-ecosystem: 'pip'
directory: '/'
schedule:
interval: 'weekly'
================================================
FILE: .github/jupyterlab-probot.yml
================================================
addBinderLink: false
triageLabel: 'status:Needs Triage'
================================================
FILE: .github/pull_request_template.md
================================================
## References
## Code changes
## User-facing changes
## Backwards-incompatible changes
================================================
FILE: .github/workflows/auto_author_assign.yml
================================================
# https://github.com/marketplace/actions/auto-author-assign
name: 'Auto Author Assign'
on:
pull_request_target:
types: [opened, reopened]
permissions:
contents: read
jobs:
assign-author:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- uses: toshimaru/auto-author-assign@v3.0.1
================================================
FILE: .github/workflows/binder.yml
================================================
name: Binder Badge
on:
pull_request_target:
types: [opened]
permissions:
contents: read
jobs:
binder:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- uses: jupyterlab/maintainer-tools/.github/actions/binder-link@v1
with:
github_token: ${{ secrets.github_token }}
url_path: tree
================================================
FILE: .github/workflows/build.yml
================================================
name: Build
on:
push:
branches: ['main']
pull_request:
schedule:
- cron: '0 0 * * *'
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
env:
PIP_DISABLE_PIP_VERSION_CHECK: 1
defaults:
run:
shell: bash -eux {0}
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Build
uses: ./.github/actions/build-dist
test:
runs-on: ubuntu-latest
timeout-minutes: 20
strategy:
fail-fast: false
matrix:
# used by the jupyterlab/maintainer-tools base-setup action
python-version: ['3.10', '3.11', '3.12', '3.13', '3.14']
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Test the package
run: hatch run cov:test
- name: JavaScript tests
run: |
hatch run js_test
- name: Integration Tests
run: |
pip install .
cd
jupyter labextension list 2>&1 | grep -ie "@jupyter-notebook/lab-extension.*enabled.*ok" -
jupyter server extension list 2>&1 | grep -ie "notebook.*enabled" -
python -m jupyterlab.browser_check
- uses: jupyterlab/maintainer-tools/.github/actions/upload-coverage@v1
coverage:
runs-on: ubuntu-latest
needs:
- test
steps:
- uses: actions/checkout@v6
- uses: jupyterlab/maintainer-tools/.github/actions/report-coverage@v1
with:
fail_under: 78
test_docs:
name: Test Docs
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- run: |
sudo apt-get update
sudo apt install enchant-2 # for spelling
# pandoc is not up to date in the ubuntu repos, so we install directly
wget https://github.com/jgm/pandoc/releases/download/2.14.2/pandoc-2.14.2-1-amd64.deb && sudo dpkg -i pandoc-2.14.2-1-amd64.deb
- run: hatch run docs:build
test_minimum_versions:
name: Test Minimum Versions
timeout-minutes: 20
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
with:
dependency_type: minimum
python_version: '3.10'
- name: Run the unit tests
run: |
hatch run test:nowarn || hatch run test:nowarn --lf
test_prereleases:
name: Test Prereleases
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v6
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
with:
dependency_type: pre
# TODO: Remove this pin once rpds-py supports Python 3.15.
# Upstream: https://github.com/crate-py/rpds/issues/210
python_version: '3.14'
- name: Run the tests
run: |
hatch run test:nowarn || hatch run test:nowarn --lf
install:
needs: [build]
runs-on: ${{ matrix.os }}
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python: ['3.10', '3.12', '3.14']
include:
- python: '3.10'
dist: 'notebook*.tar.gz'
- python: '3.12'
dist: 'notebook*.whl'
- python: '3.14'
dist: 'notebook*.whl'
- os: windows-latest
py_cmd: python
- os: macos-latest
py_cmd: python3
- os: ubuntu-latest
py_cmd: python
steps:
- name: Install Python
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python }}
allow-prereleases: true
- uses: actions/download-artifact@v8
with:
name: notebook-dist-${{ github.run_number }}
path: ./dist
- name: Install the prerequisites
run: |
${{ matrix.py_cmd }} -m pip install -U pip wheel
- name: Install the package
run: |
cd dist
${{ matrix.py_cmd }} -m pip install -vv ${{ matrix.dist }}
- name: Validate environment
run: |
${{ matrix.py_cmd }} -m pip freeze
${{ matrix.py_cmd }} -m pip check
- name: Validate the install
run: |
jupyter labextension list
jupyter labextension list 2>&1 | grep -ie "@jupyter-notebook/lab-extension.*enabled.*ok" -
jupyter server extension list
jupyter server extension list 2>&1 | grep -ie "notebook.*enabled" -
jupyter notebook --version
jupyter notebook --help
check_links:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- uses: jupyterlab/maintainer-tools/.github/actions/check-links@v1
with:
ignore_links: 'https://playwright.dev/docs/test-cli/ https://blog.jupyter.org/.* https://mybinder.org/v2/gh/jupyter/notebook/main https://nbviewer.jupyter.org https://stackoverflow.com https://github.com/[^/]+/?$'
ignore_glob: 'ui-tests/test/notebooks/*'
test_lint:
name: Test Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Run Linters
run: |
hatch run typing:test
hatch run lint:build
pipx run interrogate -v .
pipx run doc8 --max-line-length=200 docs/source *.md
npm install -g yarn
yarn
yarn eslint:check
yarn prettier:check
yarn build:utils
yarn integrity
tests_check: # This job does nothing and is only used for the branch protection
if: always()
needs:
- coverage
- install
- test_lint
- test_docs
- test_minimum_versions
- test_prereleases
- check_links
runs-on: ubuntu-latest
steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}
================================================
FILE: .github/workflows/buildutils.yml
================================================
name: Build Utilities
on:
push:
branches: ['main']
pull_request:
defaults:
run:
shell: bash -l {0}
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
permissions:
contents: read
jobs:
versioning:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Install dependencies
run: |
python -m pip install -U "jupyterlab>=4.6.0a0,<4.7" hatch
jlpm
jlpm run build
- name: Configure git identity to commit
run: |
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
- name: Reset version
run: |
hatch version 9.8.7
jlpm run lerna version 9.8.7 --no-push --force-publish --no-git-tag-version --yes
git commit -am "Release 9.8.7"
- name: Patch Release
run: |
jlpm release:patch --force
- name: Minor Release
run: |
jlpm release:bump minor --force
- name: Release Cycle
run: |
# beta
jlpm release:bump release --force
# rc
jlpm release:bump release --force
# final
jlpm release:bump release --force
- name: Major Release
run: |
jlpm release:bump major --force
npm:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Install Python
uses: actions/setup-python@v6
with:
python-version: '3.10'
architecture: 'x64'
- name: Install dependencies
run: |
python -m pip install -U "jupyterlab>=4.6.0a0,<4.7" pip
jlpm
jlpm run build
================================================
FILE: .github/workflows/check-release.yml
================================================
name: Check Release
on:
push:
branches: ['main']
pull_request:
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
jobs:
check_release:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Check Release
uses: jupyter-server/jupyter_releaser/.github/actions/check-release@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
version_spec: next
- name: Upload Distributions
uses: actions/upload-artifact@v7
with:
name: notebook-jupyter-releaser-dist-${{ github.run_number }}
path: .jupyter_releaser_checkout/dist
================================================
FILE: .github/workflows/enforce-label.yml
================================================
name: Enforce PR label
permissions:
contents: read
on:
pull_request:
types: [labeled, unlabeled, opened, edited, synchronize]
jobs:
enforce-label:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- name: enforce-triage-label
uses: jupyterlab/maintainer-tools/.github/actions/enforce-label@v1
================================================
FILE: .github/workflows/lock.yml
================================================
name: 'Lock Closed Threads'
on:
schedule:
- cron: '0 0 * * *'
permissions:
contents: read
jobs:
lock:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: dessant/lock-threads@v6
with:
github-token: ${{ github.token }}
issue-lock-inactive-days: '180'
issue-lock-labels: 'status:resolved-locked'
pr-lock-inactive-days: '180'
pr-lock-labels: 'status:resolved-locked'
================================================
FILE: .github/workflows/playwright-update.yml
================================================
name: Update Playwright Snapshots
on:
issue_comment:
types: [created, edited]
permissions:
contents: read
jobs:
update-snapshots:
runs-on: ubuntu-latest
permissions:
# Required by actions/update-snapshots
contents: write
pull-requests: write
strategy:
fail-fast: false
matrix:
browser: [firefox, chromium]
# Only run on issue comments
if: github.event.issue.pull_request && contains(github.event.comment.body, 'please update snapshots')
steps:
- uses: jupyterlab/maintainer-tools/.github/actions/update-snapshots-checkout@main
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Build
uses: ./.github/actions/build-dist
- uses: actions/download-artifact@v8
with:
name: notebook-dist-${{ github.run_number }}
path: ./dist
- name: Install the package
run: |
cd dist
python -m pip install -vv notebook*.whl
# disable git hooks
git config core.hooksPath no-hooks
- name: Install the test dependencies
run: |
cd ui-tests
jlpm
jlpm playwright install
- name: Update snapshots
uses: jupyterlab/maintainer-tools/.github/actions/update-snapshots@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
npm_client: jlpm
test_folder: ui-tests
start_server_script: 'null'
update_script: test:update --browser ${{ matrix.browser }}
env:
DEBUG: pw:webserver
================================================
FILE: .github/workflows/prep-release.yml
================================================
name: "Step 1: Prep Release"
on:
workflow_dispatch:
inputs:
version_spec:
description: "New Version Specifier"
default: "next"
required: false
branch:
description: "The branch to target"
required: false
post_version_spec:
description: "Post Version Specifier"
required: false
silent:
description: "Set a placeholder in the changelog and don't publish the release."
required: false
type: boolean
since:
description: "Use PRs with activity since this date or git reference"
required: false
since_last_stable:
description: "Use PRs with activity since the last stable git tag"
required: false
type: boolean
jobs:
prep_release:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- name: Prep Release
id: prep-release
uses: jupyter-server/jupyter_releaser/.github/actions/prep-release@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
version_spec: ${{ github.event.inputs.version_spec }}
silent: ${{ github.event.inputs.silent }}
post_version_spec: ${{ github.event.inputs.post_version_spec }}
target: ${{ github.event.inputs.target }}
branch: ${{ github.event.inputs.branch }}
since: ${{ github.event.inputs.since }}
since_last_stable: ${{ github.event.inputs.since_last_stable }}
- name: "** Next Step **"
run: |
echo "Optional): Review Draft Release: ${{ steps.prep-release.outputs.release_url }}"
================================================
FILE: .github/workflows/publish-changelog.yml
================================================
name: "Publish Changelog"
on:
release:
types: [published]
workflow_dispatch:
inputs:
branch:
description: "The branch to target"
required: false
jobs:
publish_changelog:
runs-on: ubuntu-latest
environment: release
steps:
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.APP_PRIVATE_KEY }}
- name: Publish changelog
id: publish-changelog
uses: jupyter-server/jupyter_releaser/.github/actions/publish-changelog@v2
with:
token: ${{ steps.app-token.outputs.token }}
branch: ${{ github.event.inputs.branch }}
- name: "** Next Step **"
run: |
echo "Merge the changelog update PR: ${{ steps.publish-changelog.outputs.pr_url }}"
================================================
FILE: .github/workflows/publish-release.yml
================================================
name: "Step 2: Publish Release"
on:
workflow_dispatch:
inputs:
branch:
description: "The target branch"
required: false
release_url:
description: "The URL of the draft GitHub release"
required: false
steps_to_skip:
description: "Comma separated list of steps to skip"
required: false
jobs:
publish_release:
runs-on: ubuntu-latest
environment: release
permissions:
id-token: write
steps:
- uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.APP_PRIVATE_KEY }}
- name: Populate Release
id: populate-release
uses: jupyter-server/jupyter_releaser/.github/actions/populate-release@v2
with:
token: ${{ steps.app-token.outputs.token }}
branch: ${{ github.event.inputs.branch }}
release_url: ${{ github.event.inputs.release_url }}
steps_to_skip: ${{ github.event.inputs.steps_to_skip }}
- name: Finalize Release
id: finalize-release
env:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
uses: jupyter-server/jupyter_releaser/.github/actions/finalize-release@v2
with:
token: ${{ steps.app-token.outputs.token }}
release_url: ${{ steps.populate-release.outputs.release_url }}
- name: "** Next Step **"
if: ${{ success() }}
run: |
echo "Verify the final release"
echo ${{ steps.finalize-release.outputs.release_url }}
- name: "** Failure Message **"
if: ${{ failure() }}
run: |
echo "Failed to Publish the Draft Release Url:"
echo ${{ steps.populate-release.outputs.release_url }}
================================================
FILE: .github/workflows/ui-tests.yml
================================================
name: UI Tests
on:
push:
branches: ['main']
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
permissions:
contents: read
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Build
uses: ./.github/actions/build-dist
ui-tests:
needs: [build]
runs-on: ubuntu-latest
timeout-minutes: 20
strategy:
fail-fast: false
matrix:
browser: [firefox, chromium]
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Base Setup
uses: jupyterlab/maintainer-tools/.github/actions/base-setup@v1
- uses: actions/download-artifact@v8
with:
name: notebook-dist-${{ github.run_number }}
path: ./dist
- name: Install the package
run: |
cd dist
python -m pip install -vv notebook*.whl
- name: Install the test dependencies
run: |
cd ui-tests
jlpm
jlpm playwright install
- name: Test
run: |
cd ui-tests
jlpm test --browser ${{ matrix.browser }}
- name: Upload Playwright Test assets
if: always()
uses: actions/upload-artifact@v7
with:
name: notebook-${{ matrix.browser }}-test-assets
path: |
ui-tests/test-results
- name: Upload Playwright Test report
if: always()
uses: actions/upload-artifact@v7
with:
name: notebook-${{ matrix.browser }}-test-report
path: |
ui-tests/playwright-report
- name: Update snapshots
if: failure()
run: |
cd ui-tests
# remove previous snapshots from other browser
jlpm rimraf "test/**/*-snapshots/*.png"
# generate new snapshots
jlpm run test:update --browser ${{ matrix.browser }}
- name: Upload updated snapshots
if: failure()
uses: actions/upload-artifact@v7
with:
name: notebook-${{ matrix.browser }}-updated-snapshots
path: ui-tests/test
================================================
FILE: .github/workflows/upgrade-jupyterlab-dependencies.yml
================================================
name: Check for latest JupyterLab releases
on:
# schedule:
# - cron: 30 17 * * *
workflow_dispatch:
inputs:
version:
description: 'JupyterLab version'
default: latest
required: true
type: string
branch:
description: 'The branch to target'
default: main
required: false
type: string
target_repo:
description: 'Target repository'
required: false
default: jupyter/notebook
type: string
env:
version_tag: 'latest'
permissions:
actions: write
contents: write
pull-requests: write
jobs:
check_for_lab_updates:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
with:
ref: ${{ inputs.branch || 'main' }}
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.11'
- name: Install Node
uses: actions/setup-node@v6
with:
node-version: '20.x'
- name: Install npm dependencies and build buildutils
run: |
python -m pip install -e ".[dev]"
jlpm
jlpm run build:utils
- name: Check for new releases and update
shell: bash
run: |
set -eux
for version in ${{ inputs.version || env.version_tag }}
do
if [[ "${version}" == "latest" ]]; then
export LATEST=$(jlpm run get:lab:version --set-version ${version})
else
export LATEST=${version}
fi
done
echo "latest=${LATEST}" >> $GITHUB_ENV
jlpm upgrade:lab:dependencies --set-version ${LATEST}
if [[ ! -z "$(git status --porcelain package.json)" ]]; then
jlpm
jlpm deduplicate
cd ui-tests
jlpm
jlpm deduplicate
fi
- uses: prefix-dev/setup-pixi@v0.9.4
with:
pixi-version: v0.41.4
manifest-path: pyproject.toml
locked: false
- name: Update pixi.lock
run: pixi install
- name: Create a PR
env:
GH_TOKEN: ${{ secrets.PERSONAL_GITHUB_TOKEN || secrets.GITHUB_TOKEN }}
run: |
set -eux
export LATEST=${{ env.latest }}
export BRANCH_NAME=update-to-v${LATEST}
# if resulted in any change:
if [[ ! -z "$(git status --porcelain package.json)" ]]; then
# if branch already exists.
if git ls-remote --heads origin | grep "refs/heads/${BRANCH_NAME}$" > /dev/null; then
echo "Branch '${BRANCH_NAME}' exists."
else
# new branch is created
git checkout -b "${BRANCH_NAME}"
git config user.name "github-actions[bot]"
git config user.email 'github-actions[bot]@users.noreply.github.com'
git commit . -m "Update to JupyterLab v${LATEST}"
git push --set-upstream origin "${BRANCH_NAME}"
PR_ARGS=(
--base "${{ inputs.branch || 'main' }}"
--title "Update to JupyterLab v${LATEST}"
--body "New JupyterLab release [v${LATEST}](https://github.com/jupyterlab/jupyterlab/releases/tag/v${LATEST}) is available. Please review the lock file carefully."
)
# Add --repo flag only if target_repo is specified
if [[ -n "${{ inputs.target_repo }}" ]]; then
PR_ARGS+=(--repo "${{ inputs.target_repo }}")
fi
gh pr create "${PR_ARGS[@]}"
fi
fi
================================================
FILE: .gitignore
================================================
*.bundle.*
lib/
node_modules/
*.egg-info/
.ipynb_checkpoints
*.tsbuildinfo
# Created by https://www.gitignore.io/api/python
# Edit at https://www.gitignore.io/?templates=python
### Python ###
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
# C extensions
*.so
# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
.installed.cfg
*.egg
MANIFEST
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/
# Translations
*.mo
*.pot
# Scrapy stuff:
.scrapy
# Sphinx documentation
docs/_build/
# PyBuilder
target/
# pyenv
.python-version
# celery beat schedule file
celerybeat-schedule
# SageMath parsed files
*.sage.py
# Spyder project settings
.spyderproject
.spyproject
# Rope project settings
.ropeproject
# Mr Developer
.mr.developer.cfg
.project
.pydevproject
# mkdocs documentation
/site
# mypy
.mypy_cache/
.dmypy.json
dmypy.json
# Pyre type checker
.pyre/
# OS X stuff
*.DS_Store
# End of https://www.gitignore.io/api/python
_temp_extension
junit.xml
[uU]ntitled*
notebook/static/*
!notebook/static/favicons
notebook/labextension
notebook/schemas
docs/source/changelog.md
docs/source/contributing.md
# playwright
ui-tests/test-results
ui-tests/playwright-report
# VSCode
.vscode
# RTC
.jupyter_ystore.db
# yarn >=2.x local files
.yarn/*
.pnp.*
ui-tests/.yarn/*
ui-tests/.pnp.*
# keep potential upstream patches
!.yarn/patches
# generated html
notebook/templates/*.html
# pixi environments
.pixi
*.egg-info
# Temporary files used for testing
tmp/
================================================
FILE: .pre-commit-config.yaml
================================================
ci:
autoupdate_schedule: monthly
autoupdate_commit_msg: 'chore: update pre-commit hooks'
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-case-conflict
- id: check-ast
- id: check-docstring-first
- id: check-executables-have-shebangs
- id: check-added-large-files
- id: check-case-conflict
- id: check-merge-conflict
- id: check-json
- id: check-toml
- id: check-yaml
- id: debug-statements
- id: end-of-file-fixer
- id: trailing-whitespace
- repo: https://github.com/python-jsonschema/check-jsonschema
rev: 0.30.0
hooks:
- id: check-github-workflows
- repo: https://github.com/codespell-project/codespell
rev: 'v2.3.0'
hooks:
- id: codespell
args: ['-L', 'hart,noteable', '--skip', "*.spec.ts"]
exclude: |
(?x)^(
yarn.lock|
pixi.lock|
binder/example.ipynb|
docs/source/examples/images/FrontendKernel.graffle/data.plist|
)$
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v1.14.1"
hooks:
- id: mypy
files: "^notebook"
stages: [manual]
args: ["--install-types", "--non-interactive"]
additional_dependencies: ["traitlets>=5.13", "tornado", "jupyter_server>=2.10", "jupyterlab_server>=2.25", "jupyterlab>=4.6.0a4,<4.7"]
- repo: https://github.com/pre-commit/pygrep-hooks
rev: 'v1.10.0'
hooks:
- id: rst-backticks
- id: rst-directive-colons
- id: rst-inline-touching-normal
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.8.6
hooks:
- id: ruff
types_or: [ python, jupyter ]
exclude: '^docs/source/examples/Notebook/Importing Notebooks.ipynb'
args: ['--fix', '--show-fixes']
- id: ruff-format
types_or: [ python, jupyter ]
exclude: '^docs/source/examples/Notebook/Importing Notebooks.ipynb'
- repo: https://github.com/scientific-python/cookie
rev: '2024.08.19'
hooks:
- id: sp-repo-review
additional_dependencies: ['repo-review[cli]']
- repo: local
hooks:
- id: prettier
name: prettier
entry: 'npm run prettier:files'
language: node
types_or: [json, ts, tsx, javascript, jsx, css, markdown]
stages: [manual]
- id: integrity
name: integrity
entry: 'npm run integrity --force'
language: node
stages: [pre-push]
================================================
FILE: .prettierignore
================================================
node_modules
.mypy_cache
.ruff_cache
**/node_modules
**/lib
**/package.json
**/static
**/labextension
build
CHANGELOG.md
app/index.template.js
.pixi
================================================
FILE: .prettierrc
================================================
{
"singleQuote": true
}
================================================
FILE: .readthedocs.yaml
================================================
version: 2
sphinx:
configuration: docs/source/conf.py
build:
os: ubuntu-22.04
tools:
python: '3.10'
nodejs: '16'
python:
install:
# install notebook itself
- method: pip
path: '.[docs]'
================================================
FILE: .yarnrc.yml
================================================
enableImmutableInstalls: false
enableInlineBuilds: false
enableTelemetry: false
httpTimeout: 60000
nodeLinker: node-modules
================================================
FILE: CHANGELOG.md
================================================
# Changelog
A summary of changes in the Jupyter notebook. For more detailed
information, see [GitHub](https://github.com/jupyter/notebook).
Use `pip install notebook --upgrade` or `conda upgrade notebook` to
upgrade to the latest release.
We strongly recommend that you upgrade pip to version 9+ of pip before
upgrading `notebook`.
Use `pip install pip --upgrade` to upgrade pip. Check pip version with
`pip --version`.
## 7.5
Jupyter Notebook 7.5 is based on JupyterLab 4.5, and includes a number of new features, bug fixes, and enhancements for extension developers. This release is compatible with extensions supporting JupyterLab 4.0. Extension authors are recommended to consult the [Extension Migration Guide](https://jupyterlab.readthedocs.io/en/latest/extension/extension_migration.html#jupyterlab-4-4-to-4-5) which lists deprecations and changes to the public API.
Below are a few highlights for this new release. Most of the new features and improvements come from the update to JupyterLab 4.5, although they may not all be supported in Notebook 7.5.
For reference you may have a look at the [JupyterLab 4.5 changelog](https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-5) to learn more.
### Notebook improvements
The default windowing mode is now `contentVisibility` which improves cell rendering and alleviates previously reported issues. The minimap can be enabled for all windowing modes and all notebooks via the `Settings` menu, or by toggling the minimap per notebook with the `View` -> `Show Minimap` option.
Additional fixes improve layout containment and scrollbar behavior when working with long cells.
### Debugger and console enhancements
The debugger's evaluate dialog has been replaced with an interactive console featuring syntax highlighting and code completion. The variables panel now preserves state when switching editors. Visual improvements include highlighted selected breakpoints, improved empty line handling, and a paused indicator. Debugger panels now reference cell execution counts.
Log Console users can configure default log levels and customize toolbars.
### Terminal enhancements
The terminal now includes search functionality, with search highlights that adapt to theme changes.
### Media and content support
Built-in audio and video viewers allow direct file playback within Jupyter Notebook.
### File browser enhancements
- There is a new `allowFileUploads` setting to control upload permissions.
- Menu options for creating Python, R, or Julia files are now available from the New menu.
- The "Select All" command is now available with the Ctrl + A (or Cmd + A on macOS) keyboard shortcut in the file browser.
- Breadcrumbs are now configurable through `breadcrumbsLeftItems` and `breadcrumbsRightItems` settings.
### Settings editor improvements
The `addExtraLineOnCellMerge` setting removes extra lines when merging cells, matching classic notebook behavior.
### Cell toolbar settings
The cell toolbar settings are now exposed in the Settings Editor, making it easier to customize the cell toolbar appearance and behavior.
### Keyboard shortcuts
The `O` key has been defined as the keyboard shortcut to toggle cell outputs, restoring this familiar functionality from the classic notebook.
### User interface and accessibility
Automatic theme switching between light and dark modes is now available when system synchronization is enabled. Dialog components display buttons and checkboxes on separate lines for improved readability. Terminal selections show better visibility under high-contrast themes. Keyboard navigation and status bar tab ordering have been improved.
### Breaking changes
Python 3.8 support has been dropped in this release.
## 7.6.0a4
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.6.0-alpha.3...fc791fcb0af893e3ffe7563a4140ec6af8c9dbe2))
### Bugs fixed
- Prevent scratchpad console title to update [#7843](https://github.com/jupyter/notebook/pull/7843) ([@brichet](https://github.com/brichet), [@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.6.0a4 [#7859](https://github.com/jupyter/notebook/pull/7859) ([@jtpio](https://github.com/jtpio))
- Fix check links [#7857](https://github.com/jupyter/notebook/pull/7857) ([@jtpio](https://github.com/jtpio))
- TypeScript 5.9 [#7855](https://github.com/jupyter/notebook/pull/7855) ([@jtpio](https://github.com/jtpio))
- Bump the actions group with 2 updates [#7846](https://github.com/jupyter/notebook/pull/7846) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See [our definition of contributors](https://github-activity.readthedocs.io/en/latest/use/#how-does-this-tool-define-contributions-in-the-reports).
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2026-02-24&to=2026-03-12&type=c))
@brichet ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2026-02-24..2026-03-12&type=Issues)) | @jtpio ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2026-02-24..2026-03-12&type=Issues))
## 7.6.0a3
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.6.0-alpha.2...767a30d1ec90e9baf4975023c7019c95d9fe8614))
### Enhancements made
- Update to JupyterLab v4.6.0a3 [#7839](https://github.com/jupyter/notebook/pull/7839) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Fix PyO3 CI failure with Python 3.15 [#7836](https://github.com/jupyter/notebook/pull/7836) ([@jtpio](https://github.com/jtpio))
- Update to ESLint 9, update other dependencies [#7821](https://github.com/jupyter/notebook/pull/7821) ([@jtpio](https://github.com/jtpio))
- Bump prefix-dev/setup-pixi from 0.9.3 to 0.9.4 in the actions group [#7819](https://github.com/jupyter/notebook/pull/7819) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- docs: Fix broken links in troubleshooting and migration docs [#7824](https://github.com/jupyter/notebook/pull/7824) ([@RamiNoodle733](https://github.com/RamiNoodle733), [@jtpio](https://github.com/jtpio))
- Fix grammar: join sentences in CONTRIBUTING.md [#7813](https://github.com/jupyter/notebook/pull/7813) ([@bodhisilberling](https://github.com/bodhisilberling), [@krassowski](https://github.com/krassowski))
### Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See [our definition of contributors](https://github-activity.readthedocs.io/en/latest/use/#how-does-this-tool-define-contributions-in-the-reports).
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2026-01-23&to=2026-02-24&type=c))
@bodhisilberling ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abodhisilberling+updated%3A2026-01-23..2026-02-24&type=Issues)) | @jtpio ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2026-01-23..2026-02-24&type=Issues)) | @krassowski ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2026-01-23..2026-02-24&type=Issues)) | @RamiNoodle733 ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARamiNoodle733+updated%3A2026-01-23..2026-02-24&type=Issues))
## 7.6.0a2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.6.0-alpha.1...209c7da02e8245ec96bf121a641802096ff8cbb3))
### Enhancements made
- Add a scratch-pad console to the notebook [#7790](https://github.com/jupyter/notebook/pull/7790) ([@brichet](https://github.com/brichet), [@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.6.0a2 [#7814](https://github.com/jupyter/notebook/pull/7814) ([@jtpio](https://github.com/jtpio))
- Bump the actions group with 4 updates [#7811](https://github.com/jupyter/notebook/pull/7811) ([@jtpio](https://github.com/jtpio))
- Bump tar from 6.1.13 to 6.2.1 in /ui-tests [#7810](https://github.com/jupyter/notebook/pull/7810) ([@jtpio](https://github.com/jtpio))
- Update snapshots bot checkout and permission check [#7806](https://github.com/jupyter/notebook/pull/7806) ([@martinRenou](https://github.com/martinRenou), [@krassowski](https://github.com/krassowski))
- Rename the token env variable [#7802](https://github.com/jupyter/notebook/pull/7802) ([@brichet](https://github.com/brichet), [@jtpio](https://github.com/jtpio))
### Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See [our definition of contributors](https://github-activity.readthedocs.io/en/latest/use/#how-does-this-tool-define-contributions-in-the-reports).
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2026-01-12&to=2026-01-23&type=c))
@brichet ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2026-01-12..2026-01-23&type=Issues)) | @jtpio ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2026-01-12..2026-01-23&type=Issues)) | @krassowski ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2026-01-12..2026-01-23&type=Issues)) | @martinRenou ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AmartinRenou+updated%3A2026-01-12..2026-01-23&type=Issues))
## 7.6.0a1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.6.0-alpha.0...aa605fa66c6885d85a37c7ab3ba6e7f7a837a810))
### Enhancements made
- Add PR template [#7792](https://github.com/jupyter/notebook/pull/7792) ([@KH-Coder865](https://github.com/KH-Coder865), [@andrii-i](https://github.com/andrii-i))
### Bugs fixed
- Fix toggling the side panels from menu [#7799](https://github.com/jupyter/notebook/pull/7799) ([@brichet](https://github.com/brichet), [@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Clean up node 24 install [#7803](https://github.com/jupyter/notebook/pull/7803) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.6.0a1 [#7801](https://github.com/jupyter/notebook/pull/7801) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Fix grammar in notebook documentation [#7794](https://github.com/jupyter/notebook/pull/7794) ([@xlumzee](https://github.com/xlumzee), [@krassowski](https://github.com/krassowski))
### Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See [our definition of contributors](https://github-activity.readthedocs.io/en/latest/#how-does-this-tool-define-contributions-in-the-reports).
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-12-17&to=2026-01-12&type=c))
@andrii-i ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2025-12-17..2026-01-12&type=Issues)) | @brichet ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2025-12-17..2026-01-12&type=Issues)) | @jtpio ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-12-17..2026-01-12&type=Issues)) | @KH-Coder865 ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AKH-Coder865+updated%3A2025-12-17..2026-01-12&type=Issues)) | @krassowski ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2025-12-17..2026-01-12&type=Issues)) | @xlumzee ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Axlumzee+updated%3A2025-12-17..2026-01-12&type=Issues))
## 7.6.0a0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.1...e7f5e5d50ea18b0b17fe8a9df674025fcc6ab5d1))
### Maintenance and upkeep improvements
- Bump systeminformation from 5.23.14 to 5.27.14 in /ui-tests [#7788](https://github.com/jupyter/notebook/pull/7788) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab `4.6.0a0` [#7787](https://github.com/jupyter/notebook/pull/7787) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See [our definition of contributors](https://github-activity.readthedocs.io/en/latest/#how-does-this-tool-define-contributions-in-the-reports).
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-12-16&to=2025-12-17&type=c))
@jtpio ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-12-16..2025-12-17&type=Issues))
## 7.5.1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0...fccf56801be0a27a3de76c00d2710a941f255b10))
### Bugs fixed
- Fix selector for the `O` keyboard shortcut [#7782](https://github.com/jupyter/notebook/pull/7782) ([@jtpio](https://github.com/jtpio), [@krassowski](https://github.com/krassowski))
- Fix missing debugger display provider in Notebook [#7774](https://github.com/jupyter/notebook/pull/7774) ([@arjxn-py](https://github.com/arjxn-py), [@jtpio](https://github.com/jtpio), [@martinRenou](https://github.com/martinRenou))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.5.1 [#7785](https://github.com/jupyter/notebook/pull/7785) ([@jtpio](https://github.com/jtpio))
- Fix link to the IPython install page [#7783](https://github.com/jupyter/notebook/pull/7783) ([@jtpio](https://github.com/jtpio))
- Fix `hatch build`, ignore links to `blog.jupyter.org` [#7780](https://github.com/jupyter/notebook/pull/7780) ([@jtpio](https://github.com/jtpio))
- Bump the actions group with 4 updates [#7773](https://github.com/jupyter/notebook/pull/7773) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See [our definition of contributors](https://github-activity.readthedocs.io/en/latest/#how-does-this-tool-define-contributions-in-the-reports).
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-11-19&to=2025-12-16&type=c))
@arjxn-py ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aarjxn-py+updated%3A2025-11-19..2025-12-16&type=Issues)) | @jtpio ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-11-19..2025-12-16&type=Issues)) | @krassowski ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2025-11-19..2025-12-16&type=Issues)) | @martinRenou ([activity](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AmartinRenou+updated%3A2025-11-19..2025-12-16&type=Issues))
## 7.5.0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0...be53ec8bc96cdbcb64b6f1c5ec39c123c087a348))
### Enhancements made
- Update to JupyterLab v4.5.0b1 [#7746](https://github.com/jupyter/notebook/pull/7746) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.5.0b0 [#7739](https://github.com/jupyter/notebook/pull/7739) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.5.0a4 [#7728](https://github.com/jupyter/notebook/pull/7728) ([@jtpio](https://github.com/jtpio))
- Increase the checkpoint polling interval to 30s [#7711](https://github.com/jupyter/notebook/pull/7711) ([@jtpio](https://github.com/jtpio))
- Define `O` as the keyboard shortcut to toggle cell outputs [#7709](https://github.com/jupyter/notebook/pull/7709) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.5.0a3 [#7703](https://github.com/jupyter/notebook/pull/7703) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Expose the cell toolbar settings [#7766](https://github.com/jupyter/notebook/pull/7766) ([@jtpio](https://github.com/jtpio))
- Handle file rename errors [#7710](https://github.com/jupyter/notebook/pull/7710) ([@jtpio](https://github.com/jtpio))
- Fix open file with “#” in the filename [#7698](https://github.com/jupyter/notebook/pull/7698) ([@itsmevichu](https://github.com/itsmevichu))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.5.0 [#7768](https://github.com/jupyter/notebook/pull/7768) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.5.0rc1 [#7764](https://github.com/jupyter/notebook/pull/7764) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.5.0rc0 [#7755](https://github.com/jupyter/notebook/pull/7755) ([@jtpio](https://github.com/jtpio))
- Bump the actions group across 1 directory with 3 updates [#7751](https://github.com/jupyter/notebook/pull/7751) ([@dependabot](https://github.com/dependabot))
- Use Node.js 24 / npm 11 to publish releases [#7749](https://github.com/jupyter/notebook/pull/7749) ([@jtpio](https://github.com/jtpio))
- Revert "Pin `click<8.3`" [#7733](https://github.com/jupyter/notebook/pull/7733) ([@jtpio](https://github.com/jtpio))
- Remove link to `npmjs.com` [#7730](https://github.com/jupyter/notebook/pull/7730) ([@jtpio](https://github.com/jtpio))
- Pin `click<8.3` [#7729](https://github.com/jupyter/notebook/pull/7729) ([@jtpio](https://github.com/jtpio))
- Bump the actions group across 1 directory with 3 updates [#7704](https://github.com/jupyter/notebook/pull/7704) ([@dependabot](https://github.com/dependabot))
- Update to JupyterLab v4.5.0a2 [#7694](https://github.com/jupyter/notebook/pull/7694) ([@jtpio](https://github.com/jtpio))
- Pin `httpx` [#7691](https://github.com/jupyter/notebook/pull/7691) ([@jtpio](https://github.com/jtpio))
- Bump prefix-dev/setup-pixi from 0.8.10 to 0.8.11 in the actions group [#7675](https://github.com/jupyter/notebook/pull/7675) ([@dependabot](https://github.com/dependabot))
- Bump prefix-dev/setup-pixi from 0.8.8 to 0.8.10 in the actions group [#7665](https://github.com/jupyter/notebook/pull/7665) ([@dependabot](https://github.com/dependabot))
- Bump brace-expansion from 1.1.11 to 1.1.12 in /ui-tests [#7664](https://github.com/jupyter/notebook/pull/7664) ([@dependabot](https://github.com/dependabot))
- Revert "CI: pin to `jupyter-core<5.8.0` on Windows" [#7657](https://github.com/jupyter/notebook/pull/7657) ([@minrk](https://github.com/minrk))
- Update to JupyterLab v4.5.0a1 [#7656](https://github.com/jupyter/notebook/pull/7656) ([@jtpio](https://github.com/jtpio))
- CI: pin to `jupyter-core<5.8.0` on Windows [#7655](https://github.com/jupyter/notebook/pull/7655) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.5.0a0 [#7650](https://github.com/jupyter/notebook/pull/7650) ([@jtpio](https://github.com/jtpio))
- Run UI tests on `ubuntu-latest` [#7639](https://github.com/jupyter/notebook/pull/7639) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.1 [#7638](https://github.com/jupyter/notebook/pull/7638) ([@jtpio](https://github.com/jtpio))
- Bump prefix-dev/setup-pixi from 0.8.5 to 0.8.8 in the actions group [#7637](https://github.com/jupyter/notebook/pull/7637) ([@dependabot](https://github.com/dependabot))
- chore: Fix UP006 [#7633](https://github.com/jupyter/notebook/pull/7633) ([@honnix](https://github.com/honnix))
- Bump prefix-dev/setup-pixi from 0.8.4 to 0.8.5 in the actions group [#7632](https://github.com/jupyter/notebook/pull/7632) ([@dependabot](https://github.com/dependabot))
- Drop support for Python 3.8 [#7628](https://github.com/jupyter/notebook/pull/7628) ([@honnix](https://github.com/honnix))
### Documentation improvements
- User facing changelog for 7.5 [#7770](https://github.com/jupyter/notebook/pull/7770) ([@jtpio](https://github.com/jtpio))
- Clean up references to Gitpod [#7767](https://github.com/jupyter/notebook/pull/7767) ([@jtpio](https://github.com/jtpio))
- Fix link to Code of Conduct in CONTRIBUTING.md [#7758](https://github.com/jupyter/notebook/pull/7758) ([@jtpio](https://github.com/jtpio))
- Remove JupyterCon 2025 announcement banner [#7757](https://github.com/jupyter/notebook/pull/7757) ([@jasongrout](https://github.com/jasongrout))
- Update JupyterCon 2025 announcement links [#7744](https://github.com/jupyter/notebook/pull/7744) ([@krassowski](https://github.com/krassowski))
- Add JupyterCon banner and add Jupyter colors [#7727](https://github.com/jupyter/notebook/pull/7727) ([@choldgraf](https://github.com/choldgraf))
- Fix grammatical issues in Contributing.md [#7669](https://github.com/jupyter/notebook/pull/7669) ([@sangampaudel530](https://github.com/sangampaudel530))
- Fixed grammar and typos in CONTRIBUTING.md [#7645](https://github.com/jupyter/notebook/pull/7645) ([@jchen1223](https://github.com/jchen1223))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-04-09&to=2025-11-19&type=c))
[@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2025-04-09..2025-11-19&type=Issues) | [@choldgraf](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Acholdgraf+updated%3A2025-04-09..2025-11-19&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2025-04-09..2025-11-19&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-04-09..2025-11-19&type=Issues) | [@honnix](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ahonnix+updated%3A2025-04-09..2025-11-19&type=Issues) | [@itsmevichu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aitsmevichu+updated%3A2025-04-09..2025-11-19&type=Issues) | [@jasongrout](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajasongrout+updated%3A2025-04-09..2025-11-19&type=Issues) | [@jchen1223](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajchen1223+updated%3A2025-04-09..2025-11-19&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-04-09..2025-11-19&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2025-04-09..2025-11-19&type=Issues) | [@lumberbot-app](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Alumberbot-app+updated%3A2025-04-09..2025-11-19&type=Issues) | [@minrk](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aminrk+updated%3A2025-04-09..2025-11-19&type=Issues) | [@nkn2022](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ankn2022+updated%3A2025-04-09..2025-11-19&type=Issues) | [@sangampaudel530](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Asangampaudel530+updated%3A2025-04-09..2025-11-19&type=Issues)
## 7.5.0rc1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0-rc.0...7533ccab5e4adc765e57a35b1791850daf952044))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.5.0rc1 [#7764](https://github.com/jupyter/notebook/pull/7764) ([@jtpio](https://github.com/jtpio))
- Bump the actions group across 1 directory with 3 updates [#7751](https://github.com/jupyter/notebook/pull/7751) ([@dependabot](https://github.com/dependabot))
### Documentation improvements
- Fix link to Code of Conduct in CONTRIBUTING.md [#7758](https://github.com/jupyter/notebook/pull/7758) ([@jtpio](https://github.com/jtpio))
- Remove JupyterCon 2025 announcement banner [#7757](https://github.com/jupyter/notebook/pull/7757) ([@jasongrout](https://github.com/jasongrout))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-11-03&to=2025-11-14&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2025-11-03..2025-11-14&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-11-03..2025-11-14&type=Issues) | [@jasongrout](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajasongrout+updated%3A2025-11-03..2025-11-14&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-11-03..2025-11-14&type=Issues)
## 7.5.0rc0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0-beta.1...18ba796a58402999044b7e8c4401319b76fed0ce))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.5.0rc0 [#7755](https://github.com/jupyter/notebook/pull/7755) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-10-20&to=2025-11-03&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2025-10-20..2025-11-03&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-10-20..2025-11-03&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-10-20..2025-11-03&type=Issues)
## 7.5.0b1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0-beta.0...7f84b95ed6550508f9de03d27cd8c2cb84777648))
### Enhancements made
- Update to JupyterLab v4.5.0b1 [#7746](https://github.com/jupyter/notebook/pull/7746) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Use Node.js 24 / npm 11 to publish releases [#7749](https://github.com/jupyter/notebook/pull/7749) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Update JupyterCon 2025 announcement links [#7744](https://github.com/jupyter/notebook/pull/7744) ([@krassowski](https://github.com/krassowski))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-09-29&to=2025-10-20&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-09-29..2025-10-20&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-09-29..2025-10-20&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2025-09-29..2025-10-20&type=Issues) | [@nkn2022](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ankn2022+updated%3A2025-09-29..2025-10-20&type=Issues)
## 7.5.0b0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0-alpha.3...828708ec26cc4d2ff9f8b725b00024481ae42d2d))
### Enhancements made
- Update to JupyterLab v4.5.0b0 [#7739](https://github.com/jupyter/notebook/pull/7739) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Add JupyterCon banner and add Jupyter colors [#7727](https://github.com/jupyter/notebook/pull/7727) ([@choldgraf](https://github.com/choldgraf))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-09-24&to=2025-09-29&type=c))
[@choldgraf](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Acholdgraf+updated%3A2025-09-24..2025-09-29&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-09-24..2025-09-29&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-09-24..2025-09-29&type=Issues)
## 7.5.0a3
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0-alpha.2...254b06ca4b232a0a96ad2dddde560e41df371e57))
### Enhancements made
- Update to JupyterLab v4.5.0a4 [#7728](https://github.com/jupyter/notebook/pull/7728) ([@jtpio](https://github.com/jtpio))
- Increase the checkpoint polling interval to 30s [#7711](https://github.com/jupyter/notebook/pull/7711) ([@jtpio](https://github.com/jtpio))
- Define `O` as the keyboard shortcut to toggle cell outputs [#7709](https://github.com/jupyter/notebook/pull/7709) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Handle file rename errors [#7710](https://github.com/jupyter/notebook/pull/7710) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Revert "Pin `click<8.3`" [#7733](https://github.com/jupyter/notebook/pull/7733) ([@jtpio](https://github.com/jtpio))
- Remove link to `npmjs.com` [#7730](https://github.com/jupyter/notebook/pull/7730) ([@jtpio](https://github.com/jtpio))
- Pin `click<8.3` [#7729](https://github.com/jupyter/notebook/pull/7729) ([@jtpio](https://github.com/jtpio))
- Bump the actions group across 1 directory with 3 updates [#7704](https://github.com/jupyter/notebook/pull/7704) ([@dependabot](https://github.com/dependabot))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-08-18&to=2025-09-24&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2025-08-18..2025-09-24&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-08-18..2025-09-24&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-08-18..2025-09-24&type=Issues) | [@nkn2022](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ankn2022+updated%3A2025-08-18..2025-09-24&type=Issues)
## 7.5.0a2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0-alpha.1...3100d879bfe09c629b4add998bd2ac408ffa2af8))
### Enhancements made
- Update to JupyterLab v4.5.0a3 [#7703](https://github.com/jupyter/notebook/pull/7703) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix open file with “#” in the filename [#7698](https://github.com/jupyter/notebook/pull/7698) ([@itsmevichu](https://github.com/itsmevichu))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-08-11&to=2025-08-18&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-08-11..2025-08-18&type=Issues) | [@itsmevichu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aitsmevichu+updated%3A2025-08-11..2025-08-18&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-08-11..2025-08-18&type=Issues)
## 7.5.0a1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.5.0-alpha.0...f56a27c17bfd85f37a27dea9512c675120571e63))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.5.0a2 [#7694](https://github.com/jupyter/notebook/pull/7694) ([@jtpio](https://github.com/jtpio))
- Pin `httpx` [#7691](https://github.com/jupyter/notebook/pull/7691) ([@jtpio](https://github.com/jtpio))
- Bump prefix-dev/setup-pixi from 0.8.10 to 0.8.11 in the actions group [#7675](https://github.com/jupyter/notebook/pull/7675) ([@dependabot](https://github.com/dependabot))
- Bump prefix-dev/setup-pixi from 0.8.8 to 0.8.10 in the actions group [#7665](https://github.com/jupyter/notebook/pull/7665) ([@dependabot](https://github.com/dependabot))
- Bump brace-expansion from 1.1.11 to 1.1.12 in /ui-tests [#7664](https://github.com/jupyter/notebook/pull/7664) ([@dependabot](https://github.com/dependabot))
- Revert "CI: pin to `jupyter-core<5.8.0` on Windows" [#7657](https://github.com/jupyter/notebook/pull/7657) ([@minrk](https://github.com/minrk))
- Update to JupyterLab v4.5.0a1 [#7656](https://github.com/jupyter/notebook/pull/7656) ([@jtpio](https://github.com/jtpio))
- CI: pin to `jupyter-core<5.8.0` on Windows [#7655](https://github.com/jupyter/notebook/pull/7655) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Fix grammatical issues in Contributing.md [#7669](https://github.com/jupyter/notebook/pull/7669) ([@sangampaudel530](https://github.com/sangampaudel530))
- Fixed grammar and typos in CONTRIBUTING.md [#7645](https://github.com/jupyter/notebook/pull/7645) ([@jchen1223](https://github.com/jchen1223))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-05-07&to=2025-08-11&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2025-05-07..2025-08-11&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-05-07..2025-08-11&type=Issues) | [@jchen1223](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajchen1223+updated%3A2025-05-07..2025-08-11&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-05-07..2025-08-11&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2025-05-07..2025-08-11&type=Issues) | [@minrk](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aminrk+updated%3A2025-05-07..2025-08-11&type=Issues) | [@sangampaudel530](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Asangampaudel530+updated%3A2025-05-07..2025-08-11&type=Issues)
## 7.5.0a0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0...22e29fc41901ef8116670bc8a04eeb833858ff51))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.5.0a0 [#7650](https://github.com/jupyter/notebook/pull/7650) ([@jtpio](https://github.com/jtpio))
- Run UI tests on `ubuntu-latest` [#7639](https://github.com/jupyter/notebook/pull/7639) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.1 [#7638](https://github.com/jupyter/notebook/pull/7638) ([@jtpio](https://github.com/jtpio))
- Bump prefix-dev/setup-pixi from 0.8.5 to 0.8.8 in the actions group [#7637](https://github.com/jupyter/notebook/pull/7637) ([@dependabot](https://github.com/dependabot))
- chore: Fix UP006 [#7633](https://github.com/jupyter/notebook/pull/7633) ([@honnix](https://github.com/honnix))
- Bump prefix-dev/setup-pixi from 0.8.4 to 0.8.5 in the actions group [#7632](https://github.com/jupyter/notebook/pull/7632) ([@dependabot](https://github.com/dependabot))
- Drop support for Python 3.8 [#7628](https://github.com/jupyter/notebook/pull/7628) ([@honnix](https://github.com/honnix))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-04-09&to=2025-05-07&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2025-04-09..2025-05-07&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-04-09..2025-05-07&type=Issues) | [@honnix](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ahonnix+updated%3A2025-04-09..2025-05-07&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-04-09..2025-05-07&type=Issues)
## 7.4
Jupyter Notebook 7.4 is based on JupyterLab 4.4, and includes a number of new features, bug fixes, and enhancements for extension developers. This release is compatible with extensions supporting JupyterLab 4.0. Extension authors are recommended to consult the [Extension Migration Guide](https://jupyterlab.readthedocs.io/en/latest/extension/extension_migration.html#jupyterlab-4-3-to-4-4) which lists deprecations and changes to the public API.
Below are a few highlights for this new release. Most of the new features and improvements come from the update to JupyterLab 4.4, although they may not all be supported in Notebook 7.4.
For reference you may have a look at the [JupyterLab 4.4 changelog](https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-4) to learn more.
### Code console improvements
The code console prompt can now be positioned on the top, left, or right side of the console,
in addition to the default bottom placement. The placement is persisted in the Prompt Cell
Position setting.
The console toolbar now includes buttons to:
- Execute code
- Restart the kernel
- Clear the cells
- Switch the kernel
Additional settings for console behavior have been added:
- Clear Code Content on Execute (enabled by default) – When disabled, the code submitted for execution remains in the code editor, allowing for further edits.
- Hide Code Input – When enabled, only the execution output is shown in the console.
- Clear Cells on Execute – When enabled, only the last cell is displayed.
Toggling all the three new settings transforms the console into an interactive editor
resembling an ephemeral notebook with a single cell.
### Settings import and export
Settings can now be exported to `overrides.json` from the Settings Editor,
which can be used to pre-configure defaults in deployments or to restore settings.
### Support for collaboration without `RTC:` drive
Real time collaboration in previous versions of JupyterLab and Jupyter Notebook
(which can be enabled by installing jupyter-collaboration package)
was implemented by swapping the default JupyterLab file system
drive to a collaborative drive with the `RTC:` prefix.
This approach was incompatible with multiple extensions.
JupyterLab 4.4 introduces the Content Providers API, which allows the next version of `jupyter-collaboration` to work without changing the drive prefix.
This improves compatibility with extensions that do not support arbitrary drives.
### Context menu opt-out
The context menu, available under right mouse click in browsers, can now be disabled globally
by toggling the `Enable Context Menu` option available in the Command Palette,
or via the JSON Settings Editor in the Application Context Menu.
## 7.4.0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.2...fbfe36574e04b16ed7ba9303c5e819330f402f87))
### Highlights ✨
To learn more about the highlights of the 7.4.0 release: https://jupyter-notebook.readthedocs.io/en/latest/changelog.html
### Enhancements made
- Update to JupyterLab v4.4.0rc1 [#7622](https://github.com/jupyter/notebook/pull/7622) ([@jtpio](https://github.com/jtpio))
- Add support for a `down` area [#7619](https://github.com/jupyter/notebook/pull/7619) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.0rc0 [#7618](https://github.com/jupyter/notebook/pull/7618) ([@jtpio](https://github.com/jtpio))
- Support `ServiceManagerPlugin` [#7616](https://github.com/jupyter/notebook/pull/7616) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab `v4.4.0b1` [#7607](https://github.com/jupyter/notebook/pull/7607) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.0b0 [#7591](https://github.com/jupyter/notebook/pull/7591) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.0a3 [#7577](https://github.com/jupyter/notebook/pull/7577) ([@jtpio](https://github.com/jtpio))
- Add active cell border padding, remove double cell padding [#7570](https://github.com/jupyter/notebook/pull/7570) ([@andrii-i](https://github.com/andrii-i))
### Bugs fixed
- Fix undefined error when checkpoints is empty [#7567](https://github.com/jupyter/notebook/pull/7567) ([@jdavid](https://github.com/jdavid))
### Maintenance and upkeep improvements
- Bump the actions group with 2 updates [#7626](https://github.com/jupyter/notebook/pull/7626) ([@dependabot](https://github.com/dependabot))
- Update to JupyterLab v4.4.0b2 [#7614](https://github.com/jupyter/notebook/pull/7614) ([@jtpio](https://github.com/jtpio))
- Add pixi step to the update workflow [#7608](https://github.com/jupyter/notebook/pull/7608) ([@jtpio](https://github.com/jtpio))
- Update `@babel` dependencies [#7605](https://github.com/jupyter/notebook/pull/7605) ([@jtpio](https://github.com/jtpio))
- Add devcontainer support, backed by pixi [#7602](https://github.com/jupyter/notebook/pull/7602) ([@jtpio](https://github.com/jtpio))
- Manual dependabot bumps [#7599](https://github.com/jupyter/notebook/pull/7599) ([@jtpio](https://github.com/jtpio))
- Bump vega-selections from 5.4.1 to 5.5.0 in /ui-tests [#7592](https://github.com/jupyter/notebook/pull/7592) ([@dependabot](https://github.com/dependabot))
- Improve handling of optional notebook tracker [#7581](https://github.com/jupyter/notebook/pull/7581) ([@jtpio](https://github.com/jtpio))
- Fix upgrade script [#7579](https://github.com/jupyter/notebook/pull/7579) ([@jtpio](https://github.com/jtpio))
- Allow owners/members/collab to trigger galata update on other's PR [#7572](https://github.com/jupyter/notebook/pull/7572) ([@krassowski](https://github.com/krassowski))
- Update `typescript` and `lerna` [#7562](https://github.com/jupyter/notebook/pull/7562) ([@jtpio](https://github.com/jtpio))
- Update pre-commit hooks [#7561](https://github.com/jupyter/notebook/pull/7561) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.0a2 [#7559](https://github.com/jupyter/notebook/pull/7559) ([@jtpio](https://github.com/jtpio))
- Bump the actions group across 1 directory with 2 updates [#7558](https://github.com/jupyter/notebook/pull/7558) ([@dependabot](https://github.com/dependabot))
- Improve update script [#7556](https://github.com/jupyter/notebook/pull/7556) ([@jtpio](https://github.com/jtpio))
- Disable cron scheduling for now [#7555](https://github.com/jupyter/notebook/pull/7555) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.0a1 [#7554](https://github.com/jupyter/notebook/pull/7554) ([@jtpio](https://github.com/jtpio))
- Update workflow improvements [#7552](https://github.com/jupyter/notebook/pull/7552) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- User facing changelog for 7.4 [#7612](https://github.com/jupyter/notebook/pull/7612) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-12-21&to=2025-04-09&type=c))
[@andrii-i](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2024-12-21..2025-04-09&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2024-12-21..2025-04-09&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-12-21..2025-04-09&type=Issues) | [@jdavid](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajdavid+updated%3A2024-12-21..2025-04-09&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-12-21..2025-04-09&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-12-21..2025-04-09&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2024-12-21..2025-04-09&type=Issues)
## 7.4.0rc0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-beta.3...7fa19999c9e01d713a684e0f25d8017dbc999528))
### Enhancements made
- Update to JupyterLab v4.4.0rc1 [#7622](https://github.com/jupyter/notebook/pull/7622) ([@jtpio](https://github.com/jtpio))
- Add support for a `down` area [#7619](https://github.com/jupyter/notebook/pull/7619) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-03-26&to=2025-04-03&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-03-26..2025-04-03&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-03-26..2025-04-03&type=Issues)
## 7.4.0b3
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-beta.2...434221c0fe3de3df3b4b54ed1005712e07957352))
### Enhancements made
- Update to JupyterLab v4.4.0rc0 [#7618](https://github.com/jupyter/notebook/pull/7618) ([@jtpio](https://github.com/jtpio))
- Support `ServiceManagerPlugin` [#7616](https://github.com/jupyter/notebook/pull/7616) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-03-20&to=2025-03-26&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-03-20..2025-03-26&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-03-20..2025-03-26&type=Issues)
## 7.4.0b2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-beta.1...be2fd12f91a64796d9919ee8b8242f3093aac8a5))
### Maintenance and upkeep improvements
- Update to JupyterLab v4.4.0b2 [#7614](https://github.com/jupyter/notebook/pull/7614) ([@jtpio](https://github.com/jtpio))
- Add pixi step to the update workflow [#7608](https://github.com/jupyter/notebook/pull/7608) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- User facing changelog for 7.4 [#7612](https://github.com/jupyter/notebook/pull/7612) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-03-14&to=2025-03-20&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-03-14..2025-03-20&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-03-14..2025-03-20&type=Issues)
## 7.4.0b1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-beta.0...6d06d97302bd1bb77e25864214ade2277f2e50d4))
### Enhancements made
- Update to JupyterLab `v4.4.0b1` [#7607](https://github.com/jupyter/notebook/pull/7607) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update `@babel` dependencies [#7605](https://github.com/jupyter/notebook/pull/7605) ([@jtpio](https://github.com/jtpio))
- Add devcontainer support, backed by pixi [#7602](https://github.com/jupyter/notebook/pull/7602) ([@jtpio](https://github.com/jtpio))
- Manual dependabot bumps [#7599](https://github.com/jupyter/notebook/pull/7599) ([@jtpio](https://github.com/jtpio))
- Bump vega-selections from 5.4.1 to 5.5.0 in /ui-tests [#7592](https://github.com/jupyter/notebook/pull/7592) ([@dependabot](https://github.com/dependabot))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-02-20&to=2025-03-14&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2025-02-20..2025-03-14&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-02-20..2025-03-14&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-02-20..2025-03-14&type=Issues)
## 7.4.0b0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-alpha.3...48243197bbd004555008cd7cfa14c907147aceca))
### Enhancements made
- Update to JupyterLab v4.4.0b0 [#7591](https://github.com/jupyter/notebook/pull/7591) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-02-05&to=2025-02-20&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-02-05..2025-02-20&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-02-05..2025-02-20&type=Issues)
## 7.4.0a3
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-alpha.2...48e52c759ffec0cea47dfef59f48d8e9fa6112d3))
### Enhancements made
- Add active cell border padding, remove double cell padding [#7570](https://github.com/jupyter/notebook/pull/7570) ([@andrii-i](https://github.com/andrii-i))
### Maintenance and upkeep improvements
- Improve handling of optional notebook tracker [#7581](https://github.com/jupyter/notebook/pull/7581) ([@jtpio](https://github.com/jtpio))
- Fix upgrade script [#7579](https://github.com/jupyter/notebook/pull/7579) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-02-03&to=2025-02-05&type=c))
[@andrii-i](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2025-02-03..2025-02-05&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-02-03..2025-02-05&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-02-03..2025-02-05&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2025-02-03..2025-02-05&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2025-02-03..2025-02-05&type=Issues)
## 7.4.0a2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-alpha.1...ef4f6346cd6b377ade271fcd61810b5d2a7d0f41))
### Enhancements made
- Update to JupyterLab v4.4.0a3 [#7577](https://github.com/jupyter/notebook/pull/7577) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix undefined error when checkpoints is empty [#7567](https://github.com/jupyter/notebook/pull/7567) ([@jdavid](https://github.com/jdavid))
### Maintenance and upkeep improvements
- Allow owners/members/collab to trigger galata update on other's PR [#7572](https://github.com/jupyter/notebook/pull/7572) ([@krassowski](https://github.com/krassowski))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2025-01-07&to=2025-02-03&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2025-01-07..2025-02-03&type=Issues) | [@jdavid](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajdavid+updated%3A2025-01-07..2025-02-03&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2025-01-07..2025-02-03&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2025-01-07..2025-02-03&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2025-01-07..2025-02-03&type=Issues)
## 7.4.0a1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.4.0-alpha.0...18672b7e85ec5181e4c5c18d2e32c3e9eab7260c))
### Maintenance and upkeep improvements
- Update `typescript` and `lerna` [#7562](https://github.com/jupyter/notebook/pull/7562) ([@jtpio](https://github.com/jtpio))
- Update pre-commit hooks [#7561](https://github.com/jupyter/notebook/pull/7561) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.0a2 [#7559](https://github.com/jupyter/notebook/pull/7559) ([@jtpio](https://github.com/jtpio))
- Bump the actions group across 1 directory with 2 updates [#7558](https://github.com/jupyter/notebook/pull/7558) ([@dependabot](https://github.com/dependabot))
- Improve update script [#7556](https://github.com/jupyter/notebook/pull/7556) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-12-21&to=2025-01-07&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2024-12-21..2025-01-07&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-12-21..2025-01-07&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-12-21..2025-01-07&type=Issues)
## 7.4.0a0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.2...12efbe601858c317bf677dc835d314489357e20d))
### Maintenance and upkeep improvements
- Disable cron scheduling for now [#7555](https://github.com/jupyter/notebook/pull/7555) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab v4.4.0a1 [#7554](https://github.com/jupyter/notebook/pull/7554) ([@jtpio](https://github.com/jtpio))
- Update workflow improvements [#7552](https://github.com/jupyter/notebook/pull/7552) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-12-21&to=2024-12-21&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-12-21..2024-12-21&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-12-21..2024-12-21&type=Issues)
## 7.3
Jupyter Notebook 7.3 is based on JupyterLab 4.3, and includes a number of new features, bug fixes, and enhancements for extension developers. This release is compatible with extensions supporting JupyterLab 4.0. Extension authors are recommended to consult the [Extension Migration Guide](https://jupyterlab.readthedocs.io/en/latest/extension/extension_migration.html#jupyterlab-4-2-to-4-3) which lists deprecations and changes to the public API.
Below are a few highlights for this new release. Most of the new features and improvements come from the update to JupyterLab 4.3, although they may not all be supported in Notebook 7.3.
For reference you may have a look at the [JupyterLab 4.3 changelog](https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-3) to learn more.
### Minimap
The virtual scrollbar now acts as a minimap and exposes information on whether a cell:
- is running/scheduled (`[*]`), idle (`[ ]`) or was already run (e.g. `[1]`)
- was modified since it was last executed (“dirty”) - orange background
- has an output that contains an error - red background
- is markdown/code (`[ ]`/`[*]`/`[1]` for code, nothing for markdown)
- how much text/code it contains

To enable the minimap, click on the hamburger icon (≡) which appears in the notebook’s toolbar. If you do not see the hamburger icon, go to `Settings → Notebook → Windowing mode` and choose “full”.
### File browser enhancements
The file browser now:
- supports resizing the columns and remembers the column sizes after reloading JupyterLab
- supports uploading folders by drag-and-drop
- supports navigation with a single click
- adds a file filter collapsed by default (funnel icon)

In Jupyter Notebook, the single click navigation is enabled by default. If you would like to disable it to get the same experience as in JupyterLab, go to `Settings → File Browser` and make sure "Navigate files and directories with single click" is unchecked.
### Improved kernel and server interactions
The previous release enabled connecting to external kernels, such as those spawned by a third-party application like Blender. In this release the kernel selector dialog was improved to also show the external kernels.
The previous release improved the awareness of the kernel/kernel specification distinction by providing both tree and list view in the kernels sidebar panel, but only the tree view featured the kernel identifiers. In this release both the list and tree view show the kernel identifier stub.
A new toolbar button was added in the kernel allowing to shut down unused kernels (kernels with no widget attached).

### Full Width Notebook
It is now possible to configure the notebook to take up the full width of the page via:
- a setting that can be defined by a user via the Settings Editor
- the `View > Enable Full Width Notebook` menu entry
- the command palette, searching for `Enable Full Width Notebook`

This is particularly useful on large displays, or for those who prefer working with a wider notebook.
It is also possible to use the JupyterLab interface for a more fully-featured experience, which allows for full-width notebooks too, and offers a "Simple Interface" mode for only showing a single notebook at a time.
You can open JupyterLab by clicking on `View > Open JupyterLab`.
## 7.3.2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.1...7959ba0de553e9c541d2716d76108a8bc0bc2d6c))
### Maintenance and upkeep improvements
- Fix update script [#7550](https://github.com/jupyter/notebook/pull/7550) ([@jtpio](https://github.com/jtpio))
- Fix workflow to update the JupyterLab version [#7548](https://github.com/jupyter/notebook/pull/7548) ([@jtpio](https://github.com/jtpio))
- Bump nanoid from 3.3.7 to 3.3.8 in /ui-tests [#7547](https://github.com/jupyter/notebook/pull/7547) ([@dependabot](https://github.com/dependabot))
- Bump systeminformation from 5.21.8 to 5.23.14 in /ui-tests [#7546](https://github.com/jupyter/notebook/pull/7546) ([@dependabot](https://github.com/dependabot))
- Workflow to update JupyterLab dependencies automatically [#7281](https://github.com/jupyter/notebook/pull/7281) ([@itsmevichu](https://github.com/itsmevichu))
- Update to JupyterLab v4.3.4 [#7551](https://github.com/jupyter/notebook/pull/7551) ([@github-actions](https://github.com/apps/github-actions))
### Documentation improvements
- Update chat links to Zulip. [#7539](https://github.com/jupyter/notebook/pull/7539) ([@ericsnekbytes](https://github.com/ericsnekbytes))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-12-04&to=2024-12-21&type=c))
[@Carreau](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ACarreau+updated%3A2024-12-04..2024-12-21&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2024-12-04..2024-12-21&type=Issues) | [@ericsnekbytes](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aericsnekbytes+updated%3A2024-12-04..2024-12-21&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-12-04..2024-12-21&type=Issues) | [@itsmevichu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aitsmevichu+updated%3A2024-12-04..2024-12-21&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-12-04..2024-12-21&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-12-04..2024-12-21&type=Issues)
## 7.3.1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.0...21d0306ecef93ea23bf063bc1d8a0580450cd4df))
### Maintenance and upkeep improvements
- Adds jupyter-ui-toolkit packages in shared scope [#7530](https://github.com/jupyter/notebook/pull/7530) ([@brichet](https://github.com/brichet))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-12-04&to=2024-12-04&type=c))
[@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2024-12-04..2024-12-04&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-12-04..2024-12-04&type=Issues)
## 7.3.0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.2.0...b16eed26eff8e357eeccbef3f3434df77fb8ab48))
### Enhancements made
- Fix for auto scroll output option [#7511](https://github.com/jupyter/notebook/pull/7511) ([@gjmooney](https://github.com/gjmooney))
- Add a setting to enable the notebook to take up the full width [#7487](https://github.com/jupyter/notebook/pull/7487) ([@jtpio](https://github.com/jtpio))
- Add the file filter button to the file browser toolbar [#7479](https://github.com/jupyter/notebook/pull/7479) ([@jtpio](https://github.com/jtpio))
- Redirect paths from the notebooks route to the tree route if they are directories [#7446](https://github.com/jupyter/notebook/pull/7446) ([@andyscho](https://github.com/andyscho))
- Update to JupyterLab `4.3.0a1` [#7416](https://github.com/jupyter/notebook/pull/7416) ([@jtpio](https://github.com/jtpio))
- Support custom page_data_hook function [#7387](https://github.com/jupyter/notebook/pull/7387) ([@bluestealth](https://github.com/bluestealth))
- Add missing "Open..." file menu [#7385](https://github.com/jupyter/notebook/pull/7385) ([@martinRenou](https://github.com/martinRenou))
- Duplicate notebook menu option [#7374](https://github.com/jupyter/notebook/pull/7374) ([@JasonWeill](https://github.com/JasonWeill))
### Bugs fixed
- Move handling of the file browser settings to a separate plugin, enable file browser single click navigation [#7481](https://github.com/jupyter/notebook/pull/7481) ([@jtpio](https://github.com/jtpio))
- Remove pseudoelement obstructing the cell collapser [#7392](https://github.com/jupyter/notebook/pull/7392) ([@krassowski](https://github.com/krassowski))
- "Close and Shut Down Notebook" shuts down without the confirmation dialog [#7384](https://github.com/jupyter/notebook/pull/7384) ([@JasonWeill](https://github.com/JasonWeill))
- Adds message about building code before running 'develop' [#7382](https://github.com/jupyter/notebook/pull/7382) ([@JasonWeill](https://github.com/JasonWeill))
### Maintenance and upkeep improvements
- Bump Python version used on CI [#7528](https://github.com/jupyter/notebook/pull/7528) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.3.2 [#7527](https://github.com/jupyter/notebook/pull/7527) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.3.1 [#7521](https://github.com/jupyter/notebook/pull/7521) ([@jtpio](https://github.com/jtpio))
- Add webpack prod config [#7513](https://github.com/jupyter/notebook/pull/7513) ([@gjmooney](https://github.com/gjmooney))
- Update to JupyterLab 4.3 final [#7507](https://github.com/jupyter/notebook/pull/7507) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab `4.3.0rc1` [#7497](https://github.com/jupyter/notebook/pull/7497) ([@jtpio](https://github.com/jtpio))
- Remove the `StateDB` file browser trick [#7477](https://github.com/jupyter/notebook/pull/7477) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab `4.3.0rc0` [#7423](https://github.com/jupyter/notebook/pull/7423) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.3.0a0 [#7378](https://github.com/jupyter/notebook/pull/7378) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Fix link to the JupyterLab 4.3 changelog [#7529](https://github.com/jupyter/notebook/pull/7529) ([@jtpio](https://github.com/jtpio))
- Rename some header links to fit better [#7508](https://github.com/jupyter/notebook/pull/7508) ([@gjmooney](https://github.com/gjmooney))
- Add user facing changelog for `7.3.0` [#7494](https://github.com/jupyter/notebook/pull/7494) ([@jtpio](https://github.com/jtpio))
- Fix typos [#7472](https://github.com/jupyter/notebook/pull/7472) ([@algonell](https://github.com/algonell))
- Adds message about building code before running 'develop' [#7382](https://github.com/jupyter/notebook/pull/7382) ([@JasonWeill](https://github.com/JasonWeill))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-05-16&to=2024-12-04&type=c))
[@algonell](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aalgonell+updated%3A2024-05-16..2024-12-04&type=Issues) | [@andyscho](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandyscho+updated%3A2024-05-16..2024-12-04&type=Issues) | [@bluestealth](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abluestealth+updated%3A2024-05-16..2024-12-04&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-05-16..2024-12-04&type=Issues) | [@gjmooney](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agjmooney+updated%3A2024-05-16..2024-12-04&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2024-05-16..2024-12-04&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-05-16..2024-12-04&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-05-16..2024-12-04&type=Issues) | [@martinRenou](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AmartinRenou+updated%3A2024-05-16..2024-12-04&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2024-05-16..2024-12-04&type=Issues)
## 7.3.0rc0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.0-beta.2...b34449747a84fe0ba7951ae0fa8f2bb011444a60))
### Maintenance and upkeep improvements
- Update to JupyterLab 4.3.1 [#7521](https://github.com/jupyter/notebook/pull/7521) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-11-06&to=2024-11-18&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-11-06..2024-11-18&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-11-06..2024-11-18&type=Issues)
## 7.3.0b2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.0-beta.1...110e728e4a239ffc7217bd07b9a50cf4eff0dff5))
### Enhancements made
- Fix for auto scroll output option [#7511](https://github.com/jupyter/notebook/pull/7511) ([@gjmooney](https://github.com/gjmooney))
### Maintenance and upkeep improvements
- Add webpack prod config [#7513](https://github.com/jupyter/notebook/pull/7513) ([@gjmooney](https://github.com/gjmooney))
- Update to JupyterLab 4.3 final [#7507](https://github.com/jupyter/notebook/pull/7507) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Rename some header links to fit better [#7508](https://github.com/jupyter/notebook/pull/7508) ([@gjmooney](https://github.com/gjmooney))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-10-24&to=2024-11-06&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-10-24..2024-11-06&type=Issues) | [@gjmooney](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agjmooney+updated%3A2024-10-24..2024-11-06&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-10-24..2024-11-06&type=Issues)
## 7.3.0b1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.0-beta.0...f614f7c6387cc7da82e0307b70e10593b2cd6bff))
### Enhancements made
- Add a setting to enable the notebook to take up the full width [#7487](https://github.com/jupyter/notebook/pull/7487) ([@jtpio](https://github.com/jtpio))
- Add the file filter button to the file browser toolbar [#7479](https://github.com/jupyter/notebook/pull/7479) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Move handling of the file browser settings to a separate plugin, enable file browser single click navigation [#7481](https://github.com/jupyter/notebook/pull/7481) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update to JupyterLab `4.3.0rc1` [#7497](https://github.com/jupyter/notebook/pull/7497) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Add user facing changelog for `7.3.0` [#7494](https://github.com/jupyter/notebook/pull/7494) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-10-15&to=2024-10-24&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-10-15..2024-10-24&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-10-15..2024-10-24&type=Issues)
## 7.3.0b0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.0-alpha.1...fec4431305b2fd857ff81b7b60c2894dd125bec2))
### Enhancements made
- Redirect paths from the notebooks route to the tree route if they are directories [#7446](https://github.com/jupyter/notebook/pull/7446) ([@andyscho](https://github.com/andyscho))
### Maintenance and upkeep improvements
- Remove the `StateDB` file browser trick [#7477](https://github.com/jupyter/notebook/pull/7477) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab `4.3.0rc0` [#7423](https://github.com/jupyter/notebook/pull/7423) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Fix typos [#7472](https://github.com/jupyter/notebook/pull/7472) ([@algonell](https://github.com/algonell))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-07-01&to=2024-10-15&type=c))
[@algonell](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aalgonell+updated%3A2024-07-01..2024-10-15&type=Issues) | [@andyscho](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandyscho+updated%3A2024-07-01..2024-10-15&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-07-01..2024-10-15&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-07-01..2024-10-15&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-07-01..2024-10-15&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2024-07-01..2024-10-15&type=Issues)
## 7.3.0a1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.3.0-alpha.0...ff2b822d066dc8d733a259f955177da4bd4d668c))
### Enhancements made
- Update to JupyterLab `4.3.0a1` [#7416](https://github.com/jupyter/notebook/pull/7416) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Remove pseudoelement obstructing the cell collapser [#7392](https://github.com/jupyter/notebook/pull/7392) ([@krassowski](https://github.com/krassowski))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-05-31&to=2024-07-01&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-05-31..2024-07-01&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-05-31..2024-07-01&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-05-31..2024-07-01&type=Issues)
## 7.3.0a0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.2.0...1a03b9d8e502f8177684e39d7b627bed1c772bb2))
### Enhancements made
- Support custom page_data_hook function [#7387](https://github.com/jupyter/notebook/pull/7387) ([@bluestealth](https://github.com/bluestealth))
- Add missing "Open..." file menu [#7385](https://github.com/jupyter/notebook/pull/7385) ([@martinRenou](https://github.com/martinRenou))
- Duplicate notebook menu option [#7374](https://github.com/jupyter/notebook/pull/7374) ([@JasonWeill](https://github.com/JasonWeill))
### Bugs fixed
- "Close and Shut Down Notebook" shuts down without the confirmation dialog [#7384](https://github.com/jupyter/notebook/pull/7384) ([@JasonWeill](https://github.com/JasonWeill))
- Adds message about building code before running 'develop' [#7382](https://github.com/jupyter/notebook/pull/7382) ([@JasonWeill](https://github.com/JasonWeill))
### Maintenance and upkeep improvements
- Update to JupyterLab 4.3.0a0 [#7378](https://github.com/jupyter/notebook/pull/7378) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Adds message about building code before running 'develop' [#7382](https://github.com/jupyter/notebook/pull/7382) ([@JasonWeill](https://github.com/JasonWeill))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-05-16&to=2024-05-31&type=c))
[@bluestealth](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abluestealth+updated%3A2024-05-16..2024-05-31&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-05-16..2024-05-31&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2024-05-16..2024-05-31&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-05-16..2024-05-31&type=Issues) | [@martinRenou](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AmartinRenou+updated%3A2024-05-16..2024-05-31&type=Issues)
## 7.2
Jupyter Notebook 7.2 is based on JupyterLab 4.2, and includes a number of new features, bug fixes, and enhancements for extension developers. This release is compatible with extensions supporting JupyterLab 4.0. Extension authors are recommended to consult the [Extension Migration Guide](https://jupyterlab.readthedocs.io/en/latest/extension/extension_migration.html#jupyterlab-4-0-to-4-1) which lists deprecations and changes to the public API.
Below are a few highlights for this new release. Most of the new features and improvements come from the update to JupyterLab 4.2, although they are not all supported in Notebook 7.2.
For reference you may have a look at the JupyterLab 4.2 changelog to learn more: https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-2
### Full notebook windowing mode by default
Notebooks in the `full` windowing mode only render the visible cells, significantly improving the performance of the application. One limitation of `full` mode is that the search function in your browser may produce false negatives; using the search function is recommended. To revert to the behaviour from Notebook 7.2, go to Settings → Settings Editor → Notebook, scroll to “Windowing mode”, and choose `defer`.
### Improved Shortcuts Editor
Among the numerous improvements and bug fixes for the keyboard shortcuts editor:
- it is now possible to remove the default shortcuts,
- shortcuts are correctly sorted when using a language pack,
- shortcuts with different arguments are now correctly displayed as individual entries.
### Dark high contrast theme
A new theme, JupyterLab Dark High Contrast, which is intended to benefit users with the need for higher contrast, following the WCAG AAA accessibility standard for color contrast. To select this theme, from the menu bar, choose Settings → Theme → JupyterLab Dark High Contrast. Please provide feedback and suggestions on further improvements to this theme.
## 7.2.0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.1.2...31bf294e85175bbf39816a90dc8858dedaf73bde))
### Enhancements made
- Update to JupyterLab 4.2.0 [#7357](https://github.com/jupyter/notebook/pull/7357) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.2.0rc0 [#7333](https://github.com/jupyter/notebook/pull/7333) ([@jtpio](https://github.com/jtpio))
- Add `@jupyterlab/theme-dark-high-contrast-extension` [#7331](https://github.com/jupyter/notebook/pull/7331) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.2.0a2 [#7307](https://github.com/jupyter/notebook/pull/7307) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Add the `@jupyterlab/notebook-extension:copy-output` plugin [#7353](https://github.com/jupyter/notebook/pull/7353) ([@jtpio](https://github.com/jtpio))
- Fix CSS for `full` windowing mode [#7337](https://github.com/jupyter/notebook/pull/7337) ([@jtpio](https://github.com/jtpio))
- Force notebook windowing mode to `defer` [#7335](https://github.com/jupyter/notebook/pull/7335) ([@jtpio](https://github.com/jtpio))
- Fix scrollbar always showing up by default [#7327](https://github.com/jupyter/notebook/pull/7327) ([@jtpio](https://github.com/jtpio))
- Default to the `full` windowing mode [#7321](https://github.com/jupyter/notebook/pull/7321) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Fix emoji in create issue screen [#7363](https://github.com/jupyter/notebook/pull/7363) ([@JasonWeill](https://github.com/JasonWeill))
- Update `@jupyterlab/galata` [#7361](https://github.com/jupyter/notebook/pull/7361) ([@jtpio](https://github.com/jtpio))
- Pin on `macos-12` on CI for now [#7346](https://github.com/jupyter/notebook/pull/7346) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab `4.2.0b1` [#7319](https://github.com/jupyter/notebook/pull/7319) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.2.0b0 [#7312](https://github.com/jupyter/notebook/pull/7312) ([@jtpio](https://github.com/jtpio))
- Ignore links to GitHub user and organisation profiles [#7308](https://github.com/jupyter/notebook/pull/7308) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Add user facing changelog for 7.2 [#7372](https://github.com/jupyter/notebook/pull/7372) ([@jtpio](https://github.com/jtpio))
- Fix emoji in create issue screen [#7363](https://github.com/jupyter/notebook/pull/7363) ([@JasonWeill](https://github.com/JasonWeill))
- update RISE extension installation instructions [#7299](https://github.com/jupyter/notebook/pull/7299) ([@afeld](https://github.com/afeld))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-03-14&to=2024-05-16&type=c))
[@afeld](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafeld+updated%3A2024-03-14..2024-05-16&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-03-14..2024-05-16&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2024-03-14..2024-05-16&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-03-14..2024-05-16&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-03-14..2024-05-16&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2024-03-14..2024-05-16&type=Issues) | [@takluyver](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atakluyver+updated%3A2024-03-14..2024-05-16&type=Issues)
## 7.2.0rc1
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.2.0rc0...f5d8aea3bdc3eea25213792f9d101738f2a1f627))
### Enhancements made
- Update to JupyterLab 4.2.0 [#7357](https://github.com/jupyter/notebook/pull/7357) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Add the `@jupyterlab/notebook-extension:copy-output` plugin [#7353](https://github.com/jupyter/notebook/pull/7353) ([@jtpio](https://github.com/jtpio))
- Default to the `full` windowing mode [#7321](https://github.com/jupyter/notebook/pull/7321) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- update RISE extension installation instructions [#7299](https://github.com/jupyter/notebook/pull/7299) ([@afeld](https://github.com/afeld))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-05-01&to=2024-05-13&type=c))
[@afeld](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafeld+updated%3A2024-05-01..2024-05-13&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-05-01..2024-05-13&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-05-01..2024-05-13&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-05-01..2024-05-13&type=Issues) | [@takluyver](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atakluyver+updated%3A2024-05-01..2024-05-13&type=Issues)
## 7.2.0rc0
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.2.0b1...49ddd0fe1e4d4bfa24f74042f2232c5b91d1c36e))
### Enhancements made
- Update to JupyterLab 4.2.0rc0 [#7333](https://github.com/jupyter/notebook/pull/7333) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix CSS for `full` windowing mode [#7337](https://github.com/jupyter/notebook/pull/7337) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Pin on `macos-12` on CI for now [#7346](https://github.com/jupyter/notebook/pull/7346) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-04-19&to=2024-05-01&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-04-19..2024-05-01&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-04-19..2024-05-01&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-04-19..2024-05-01&type=Issues)
## 7.2.0b1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.2.0-beta.0...b45d666d5ee1ee053b55ac9cb6e9aecde5d53945))
### Enhancements made
- Add `@jupyterlab/theme-dark-high-contrast-extension` [#7331](https://github.com/jupyter/notebook/pull/7331) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Force notebook windowing mode to `defer` [#7335](https://github.com/jupyter/notebook/pull/7335) ([@jtpio](https://github.com/jtpio))
- Fix scrollbar always showing up by default [#7327](https://github.com/jupyter/notebook/pull/7327) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-04-12&to=2024-04-19&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-04-12..2024-04-19&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-04-12..2024-04-19&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2024-04-12..2024-04-19&type=Issues)
## 7.2.0b0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.2.0-alpha.0...09bcd99e6dfffce92acc9a7f9d11a2a2122131c0))
### Maintenance and upkeep improvements
- Update to JupyterLab `4.2.0b1` [#7319](https://github.com/jupyter/notebook/pull/7319) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.2.0b0 [#7312](https://github.com/jupyter/notebook/pull/7312) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-03-29&to=2024-04-12&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-03-29..2024-04-12&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-03-29..2024-04-12&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2024-03-29..2024-04-12&type=Issues)
## 7.2.0a0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.1.2...80b582bce69e33e36e936af2ea981bcb22a4d285))
### Enhancements made
- Update to JupyterLab 4.2.0a2 [#7307](https://github.com/jupyter/notebook/pull/7307) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Ignore links to GitHub user and organisation profiles [#7308](https://github.com/jupyter/notebook/pull/7308) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-03-14&to=2024-03-29&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-03-14..2024-03-29&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-03-14..2024-03-29&type=Issues)
## v7.1
Jupyter Notebook 7.1 is based on JupyterLab 4.1, and includes a number of new features, bug fixes, and enhancements for extension developers. This release is compatible with extensions supporting JupyterLab 4.0. Extension authors are recommended to consult the [Extension Migration Guide](https://jupyterlab.readthedocs.io/en/latest/extension/extension_migration.html#jupyterlab-4-0-to-4-1) which lists deprecations and changes to the public API.
Below are a few highlights for this new release. Most of the new features and improvements come from the update to JupyterLab 4.1, although they are not all supported in Notebook 7.1.
For reference you may have a look at the JupyterLab 4.1 changelog to learn more: https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-1
### Diagrams in Markdown
Matching GitHub-Flavoured Markdown, JupyterLab 4.1 now supports [Mermaid](https://github.com/mermaid-js/mermaid) diagrams.
To create a mermaid diagram use the `mermaid` language specifier for a code block in a markdown cell or document, for example:
~~~
```mermaid
flowchart LR
A[Hard] -->|Text| B(Round)
B --> C{Decision}
C -->|One| D[Result 1]
C -->|Two| E[Result 2]
```
~~~
which renders as:
### Inline completer
JupyterLab now supports completion presented as ghost text in the cell and file editors,
allowing generative AI models to provide multi-line completions. This can now also be leveraged in Jupyter Notebook.
The suggestions are provided by plugins implementing the ``IInlineCompletionProvider`` API;
by default a single provider which uses kernel history is available.
The suggestions can be invoked as-you-type or manually using a configurable shortcut (by default Alt + \\).
The default keyboard shortcuts are displayed in the small widget shown when hovering over the ghost suggestion:
- Alt + End - accept suggestion
- Alt + [ - previous suggestion
- Alt + ] - next suggestion
To enable the inline suggestions based on the kernel history, go to Settings → Inline Completer → History provider → check the "enabled" checkbox.
In addition to the built-in history suggestions,
the [`jupyter-ai`](https://github.com/jupyterlab/jupyter-ai) extension will provide
suggestions from supported models.
Note that the Jupyter AI extension is not yet compatible with Jupyter Notebook 7.
### Keyboard navigation improvements
Numerous improvements to keyboard navigation with focus on accessibility and usability are included in this release:
- the notebook cells now retain focus
- the focus can now be moved beyond the active notebook
- the toolbars can now be navigated using arrow keys
For more details, see [this post on Jupyter Blog](https://blog.jupyter.org/recent-keyboard-navigation-improvements-in-jupyter-4df32f97628d).
### Execution history in notebook
The code from previously executed cells can be used to populate empty cells,
allowing to iterate on code from previous cells or even sessions
(depending on how a specific kernel stores history).
To cycle between history items press Alt + Arrow Up and Alt + Arrow Down.
To enable execution history, go to Settings → Notebook → check the "Kernel history access" checkbox.
This feature was already available in the console in previous releases; it only works with kernels supporting execution history requests.
To clear the execution history consult the documentation of the kernel you are using (e.g., IPython/ipykernel).
### Error indicator in the table of contents
When a cell fails during execution, an error indicator will be displayed by the corresponding heading,
increasing awareness of the notebook state and enabling users to quickly navigate to the cell which requires attention.
### Search improvements
- The search box will now grow automatically to accommodate longer text
- Search in selection can now be toggled using Alt + L and automatic search in selection can be configured in settings
- Tooltips with shortcuts were added to the buttons in the search box to improve discoverability of the shortcuts
### Miscellaneous
- The current theme (dark/light) can now be synced with the browser/system preference (Settings menu → Theme → Synchronise with System Settings)
- A blue "read-only" status indicator is now displayed in the toolbar of documents which cannot be saved because their model is read-only.
- Native support for viewing jsonl/ndjson files was added
- Collapsing of breadcrumbs in the File Browser can be disabled in File Browser settings
## 7.1.2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.1.1...ca41222a9c8d75356c6d67d3bd36e34d71cce2d8))
### Maintenance and upkeep improvements
- Update Release Scripts [#7295](https://github.com/jupyter/notebook/pull/7295) ([@blink1073](https://github.com/blink1073))
- Fix jupyterlab install command in the releaser hook [#7294](https://github.com/jupyter/notebook/pull/7294) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.5 packages [#7291](https://github.com/jupyter/notebook/pull/7291) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Add a section to use local dependencies [#7292](https://github.com/jupyter/notebook/pull/7292) ([@brichet](https://github.com/brichet))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-02-26&to=2024-03-14&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2024-02-26..2024-03-14&type=Issues) | [@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2024-02-26..2024-03-14&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-02-26..2024-03-14&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-02-26..2024-03-14&type=Issues)
## 7.1.1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.1.0...da7b8d400e96ceff0eec834badd891bc5d5f154d))
### Bugs fixed
- Grayout "Edit Notebook Metadata" for other file formats. [#7265](https://github.com/jupyter/notebook/pull/7265) ([@itsmevichu](https://github.com/itsmevichu))
### Maintenance and upkeep improvements
- Fix flaky mobile UI tests [#7278](https://github.com/jupyter/notebook/pull/7278) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.2 packages [#7277](https://github.com/jupyter/notebook/pull/7277) ([@jtpio](https://github.com/jtpio))
- Ignore stackoverflow link [#7274](https://github.com/jupyter/notebook/pull/7274) ([@jtpio](https://github.com/jtpio))
- Expose `version_info` [#7273](https://github.com/jupyter/notebook/pull/7273) ([@jtpio](https://github.com/jtpio))
- Bump ip from 2.0.0 to 2.0.1 in /ui-tests [#7268](https://github.com/jupyter/notebook/pull/7268) ([@dependabot](https://github.com/dependabot))
- Bump ip from 2.0.0 to 2.0.1 [#7267](https://github.com/jupyter/notebook/pull/7267) ([@dependabot](https://github.com/dependabot))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-02-13&to=2024-02-26&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2024-02-13..2024-02-26&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-02-13..2024-02-26&type=Issues) | [@itsmevichu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aitsmevichu+updated%3A2024-02-13..2024-02-26&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-02-13..2024-02-26&type=Issues)
## 7.1.0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.0.6...b8ec7e4a8eda70a8d7dca19799acd3e96e019160))
### Enhancements made
- Create a new notebook with a specific kernel from the new dropdown [#7255](https://github.com/jupyter/notebook/pull/7255) ([@jtpio](https://github.com/jtpio))
- Add the plugin manager [#7198](https://github.com/jupyter/notebook/pull/7198) ([@jtpio](https://github.com/jtpio))
- Fix toggle functionality for widgets. [#7178](https://github.com/jupyter/notebook/pull/7178) ([@haok1402](https://github.com/haok1402))
- Bump to JupyterLab 4.1.0a4 bis [#7172](https://github.com/jupyter/notebook/pull/7172) ([@brichet](https://github.com/brichet))
- Update to JupyterLab `4.1.0a3` [#7161](https://github.com/jupyter/notebook/pull/7161) ([@jtpio](https://github.com/jtpio))
- Added Lumino Plugin Description (#7008) [#7127](https://github.com/jupyter/notebook/pull/7127) ([@Dilip-Jain](https://github.com/Dilip-Jain))
- Added Edit Notebook Metadata Option (#6402) [#7099](https://github.com/jupyter/notebook/pull/7099) ([@Dilip-Jain](https://github.com/Dilip-Jain))
- Update to JupyterLab 4.1 [#7096](https://github.com/jupyter/notebook/pull/7096) ([@jtpio](https://github.com/jtpio))
- Add the JupyterLab resources plugin [#6968](https://github.com/jupyter/notebook/pull/6968) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix spurious kernel selection dialog on notebook creation [#7258](https://github.com/jupyter/notebook/pull/7258) ([@jtpio](https://github.com/jtpio))
- Workaround for the file browser tracker focus issue [#7224](https://github.com/jupyter/notebook/pull/7224) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update to JupyterLab 4.1.1 [#7256](https://github.com/jupyter/notebook/pull/7256) ([@jtpio](https://github.com/jtpio))
- Follow JupyterLab minor versions [#7250](https://github.com/jupyter/notebook/pull/7250) ([@jtpio](https://github.com/jtpio))
- chore: update pre-commit hooks [#7237](https://github.com/jupyter/notebook/pull/7237) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Update to JupyterLab 4.1.0 final [#7234](https://github.com/jupyter/notebook/pull/7234) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.0rc1 [#7230](https://github.com/jupyter/notebook/pull/7230) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.0rc0 [#7227](https://github.com/jupyter/notebook/pull/7227) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.0b2 [#7222](https://github.com/jupyter/notebook/pull/7222) ([@jtpio](https://github.com/jtpio))
- Fix `check_links` on CI [#7219](https://github.com/jupyter/notebook/pull/7219) ([@jtpio](https://github.com/jtpio))
- Bump the actions group with 1 update [#7218](https://github.com/jupyter/notebook/pull/7218) ([@dependabot](https://github.com/dependabot))
- Bump the actions group with 2 updates [#7207](https://github.com/jupyter/notebook/pull/7207) ([@dependabot](https://github.com/dependabot))
- chore: update pre-commit hooks [#7206](https://github.com/jupyter/notebook/pull/7206) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Add nbviewer.jupyter.org to the ignore list [#7197](https://github.com/jupyter/notebook/pull/7197) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.0b0 [#7196](https://github.com/jupyter/notebook/pull/7196) ([@jtpio](https://github.com/jtpio))
- Update ruff config [#7190](https://github.com/jupyter/notebook/pull/7190) ([@blink1073](https://github.com/blink1073))
- Bump @babel/traverse from 7.23.0 to 7.23.6 [#7187](https://github.com/jupyter/notebook/pull/7187) ([@dependabot](https://github.com/dependabot))
- Bump actions/setup-python from 4 to 5 [#7180](https://github.com/jupyter/notebook/pull/7180) ([@dependabot](https://github.com/dependabot))
- Update publish-release workflow for PyPI trusted publisher [#7176](https://github.com/jupyter/notebook/pull/7176) ([@jtpio](https://github.com/jtpio))
- chore: update pre-commit hooks [#7174](https://github.com/jupyter/notebook/pull/7174) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Update `yarn.lock` [#7170](https://github.com/jupyter/notebook/pull/7170) ([@jtpio](https://github.com/jtpio))
- Bump axios from 1.5.1 to 1.6.2 [#7165](https://github.com/jupyter/notebook/pull/7165) ([@dependabot](https://github.com/dependabot))
- Bump dessant/lock-threads from 4 to 5 [#7159](https://github.com/jupyter/notebook/pull/7159) ([@dependabot](https://github.com/dependabot))
- Update ruff config and typing [#7145](https://github.com/jupyter/notebook/pull/7145) ([@blink1073](https://github.com/blink1073))
- chore: update pre-commit hooks [#7143](https://github.com/jupyter/notebook/pull/7143) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Clean up lint handling [#7142](https://github.com/jupyter/notebook/pull/7142) ([@blink1073](https://github.com/blink1073))
- Adopt ruff format [#7132](https://github.com/jupyter/notebook/pull/7132) ([@blink1073](https://github.com/blink1073))
- Fix python bumping to `minor` [#7131](https://github.com/jupyter/notebook/pull/7131) ([@jtpio](https://github.com/jtpio))
- Add Python 3.12 classifier [#7111](https://github.com/jupyter/notebook/pull/7111) ([@jtpio](https://github.com/jtpio))
- Remove viewport workaround in the UI tests [#6887](https://github.com/jupyter/notebook/pull/6887) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Add documentation for updating `notebook` imports [#7244](https://github.com/jupyter/notebook/pull/7244) ([@jtpio](https://github.com/jtpio))
- Fix link in `CONTRIBUTING.md` [#7235](https://github.com/jupyter/notebook/pull/7235) ([@jtpio](https://github.com/jtpio))
- Add user facing changelog for 7.1 [#7232](https://github.com/jupyter/notebook/pull/7232) ([@jtpio](https://github.com/jtpio))
- Clarify README about supported versions (post v7 release) [#7193](https://github.com/jupyter/notebook/pull/7193) ([@akx](https://github.com/akx))
- Set `navigation_with_keys` to `False` [#7129](https://github.com/jupyter/notebook/pull/7129) ([@jtpio](https://github.com/jtpio))
- Updated ui-tests Configuration in Contributing.md [#7124](https://github.com/jupyter/notebook/pull/7124) ([@jayeshsingh9767](https://github.com/jayeshsingh9767))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-10-17&to=2024-02-13&type=c))
[@akx](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aakx+updated%3A2023-10-17..2024-02-13&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-10-17..2024-02-13&type=Issues) | [@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2023-10-17..2024-02-13&type=Issues) | [@d5423197](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ad5423197+updated%3A2023-10-17..2024-02-13&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-10-17..2024-02-13&type=Issues) | [@Dilip-Jain](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ADilip-Jain+updated%3A2023-10-17..2024-02-13&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-10-17..2024-02-13&type=Issues) | [@haok1402](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ahaok1402+updated%3A2023-10-17..2024-02-13&type=Issues) | [@jayeshsingh9767](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajayeshsingh9767+updated%3A2023-10-17..2024-02-13&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-10-17..2024-02-13&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2023-10-17..2024-02-13&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-10-17..2024-02-13&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2023-10-17..2024-02-13&type=Issues)
## 7.1.0rc1
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.1.0rc0...376a2f97c883e6e91f321d0a676e1ee9ff3b8d87))
### Maintenance and upkeep improvements
- Follow JupyterLab minor versions [#7250](https://github.com/jupyter/notebook/pull/7250) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Add documentation for updating `notebook` imports [#7244](https://github.com/jupyter/notebook/pull/7244) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-02-07&to=2024-02-09&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-02-07..2024-02-09&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-02-07..2024-02-09&type=Issues)
## 7.1.0rc0
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.1.0b0...2d717f5896a1d4310baa2499c7e6197d1914201d))
### Enhancements made
- Added Edit Notebook Metadata Option (#6402) [#7099](https://github.com/jupyter/notebook/pull/7099) ([@Dilip-Jain](https://github.com/Dilip-Jain))
### Maintenance and upkeep improvements
- chore: update pre-commit hooks [#7237](https://github.com/jupyter/notebook/pull/7237) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Update to JupyterLab 4.1.0 final [#7234](https://github.com/jupyter/notebook/pull/7234) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.0rc1 [#7230](https://github.com/jupyter/notebook/pull/7230) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.0rc0 [#7227](https://github.com/jupyter/notebook/pull/7227) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Fix link in `CONTRIBUTING.md` [#7235](https://github.com/jupyter/notebook/pull/7235) ([@jtpio](https://github.com/jtpio))
- Add user facing changelog for 7.1 [#7232](https://github.com/jupyter/notebook/pull/7232) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2024-01-26&to=2024-02-07&type=c))
[@Dilip-Jain](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ADilip-Jain+updated%3A2024-01-26..2024-02-07&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2024-01-26..2024-02-07&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2024-01-26..2024-02-07&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2024-01-26..2024-02-07&type=Issues)
## 7.1.0b0
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.1.0a2...5d265b90ed5f097af4ca22d283ecdc705229ff92))
### Bugs fixed
- Workaround for the file browser tracker focus issue [#7224](https://github.com/jupyter/notebook/pull/7224) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update to JupyterLab 4.1.0b2 [#7222](https://github.com/jupyter/notebook/pull/7222) ([@jtpio](https://github.com/jtpio))
- Fix `check_links` on CI [#7219](https://github.com/jupyter/notebook/pull/7219) ([@jtpio](https://github.com/jtpio))
- Bump the actions group with 1 update [#7218](https://github.com/jupyter/notebook/pull/7218) ([@dependabot](https://github.com/dependabot))
- Bump the actions group with 2 updates [#7207](https://github.com/jupyter/notebook/pull/7207) ([@dependabot](https://github.com/dependabot))
- chore: update pre-commit hooks [#7206](https://github.com/jupyter/notebook/pull/7206) ([@pre-commit-ci](https://github.com/pre-commit-ci))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-12-27&to=2024-01-26&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-12-27..2024-01-26&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-12-27..2024-01-26&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-12-27..2024-01-26&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-12-27..2024-01-26&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2023-12-27..2024-01-26&type=Issues)
## 7.1.0a2
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.1.0a1...251e0e360603b6e63b280b3bd04a5406f7da28da))
### Enhancements made
- Add the plugin manager [#7198](https://github.com/jupyter/notebook/pull/7198) ([@jtpio](https://github.com/jtpio))
- Fix toggle functionality for widgets. [#7178](https://github.com/jupyter/notebook/pull/7178) ([@haok1402](https://github.com/haok1402))
### Maintenance and upkeep improvements
- Add nbviewer.jupyter.org to the ignore list [#7197](https://github.com/jupyter/notebook/pull/7197) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.1.0b0 [#7196](https://github.com/jupyter/notebook/pull/7196) ([@jtpio](https://github.com/jtpio))
- Update ruff config [#7190](https://github.com/jupyter/notebook/pull/7190) ([@blink1073](https://github.com/blink1073))
- Bump @babel/traverse from 7.23.0 to 7.23.6 [#7187](https://github.com/jupyter/notebook/pull/7187) ([@dependabot](https://github.com/dependabot))
- Bump actions/setup-python from 4 to 5 [#7180](https://github.com/jupyter/notebook/pull/7180) ([@dependabot](https://github.com/dependabot))
- Update publish-release workflow for PyPI trusted publisher [#7176](https://github.com/jupyter/notebook/pull/7176) ([@jtpio](https://github.com/jtpio))
- chore: update pre-commit hooks [#7174](https://github.com/jupyter/notebook/pull/7174) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Remove viewport workaround in the UI tests [#6887](https://github.com/jupyter/notebook/pull/6887) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Clarify README about supported versions (post v7 release) [#7193](https://github.com/jupyter/notebook/pull/7193) ([@akx](https://github.com/akx))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-12-04&to=2023-12-27&type=c))
[@akx](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aakx+updated%3A2023-12-04..2023-12-27&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-12-04..2023-12-27&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-12-04..2023-12-27&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-12-04..2023-12-27&type=Issues) | [@haok1402](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ahaok1402+updated%3A2023-12-04..2023-12-27&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-12-04..2023-12-27&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-12-04..2023-12-27&type=Issues)
## 7.1.0a1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.1.0-alpha.0...a74cd91871fcc6037d384fe59af8986557e783e5))
### Enhancements made
- Bump to JupyterLab 4.1.0a4 bis [#7172](https://github.com/jupyter/notebook/pull/7172) ([@brichet](https://github.com/brichet))
- Update to JupyterLab `4.1.0a3` [#7161](https://github.com/jupyter/notebook/pull/7161) ([@jtpio](https://github.com/jtpio))
- Add the JupyterLab resources plugin [#6968](https://github.com/jupyter/notebook/pull/6968) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update `yarn.lock` [#7170](https://github.com/jupyter/notebook/pull/7170) ([@jtpio](https://github.com/jtpio))
- Bump axios from 1.5.1 to 1.6.2 [#7165](https://github.com/jupyter/notebook/pull/7165) ([@dependabot](https://github.com/dependabot))
- Bump dessant/lock-threads from 4 to 5 [#7159](https://github.com/jupyter/notebook/pull/7159) ([@dependabot](https://github.com/dependabot))
- Update ruff config and typing [#7145](https://github.com/jupyter/notebook/pull/7145) ([@blink1073](https://github.com/blink1073))
- chore: update pre-commit hooks [#7143](https://github.com/jupyter/notebook/pull/7143) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Clean up lint handling [#7142](https://github.com/jupyter/notebook/pull/7142) ([@blink1073](https://github.com/blink1073))
- Adopt ruff format [#7132](https://github.com/jupyter/notebook/pull/7132) ([@blink1073](https://github.com/blink1073))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-10-27&to=2023-12-04&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-10-27..2023-12-04&type=Issues) | [@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2023-10-27..2023-12-04&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-10-27..2023-12-04&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-10-27..2023-12-04&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-10-27..2023-12-04&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2023-10-27..2023-12-04&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-10-27..2023-12-04&type=Issues)
## 7.1.0a0
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/application-extension@7.0.6...0cd6104b926a398b419f2433538cef437592796f))
### Enhancements made
- Added Lumino Plugin Description (#7008) [#7127](https://github.com/jupyter/notebook/pull/7127) ([@Dilip-Jain](https://github.com/Dilip-Jain))
- Update to JupyterLab 4.1 [#7096](https://github.com/jupyter/notebook/pull/7096) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Fix python bumping to `minor` [#7131](https://github.com/jupyter/notebook/pull/7131) ([@jtpio](https://github.com/jtpio))
- Add Python 3.12 classifier [#7111](https://github.com/jupyter/notebook/pull/7111) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Set `navigation_with_keys` to `False` [#7129](https://github.com/jupyter/notebook/pull/7129) ([@jtpio](https://github.com/jtpio))
- Updated ui-tests Configuration in Contributing.md [#7124](https://github.com/jupyter/notebook/pull/7124) ([@jayeshsingh9767](https://github.com/jayeshsingh9767))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-10-17&to=2023-10-27&type=c))
[@Dilip-Jain](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ADilip-Jain+updated%3A2023-10-17..2023-10-27&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-10-17..2023-10-27&type=Issues) | [@jayeshsingh9767](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajayeshsingh9767+updated%3A2023-10-17..2023-10-27&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-10-17..2023-10-27&type=Issues)
## v7.0
## 7.0.6
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/app@7.0.5...c62caffb02856737870cbc79a2cdb43b3e89c363))
### Bugs fixed
- Updated fav-icon Base URL from JupyterLab PageConfig. [#7109](https://github.com/jupyter/notebook/pull/7109) ([@jayeshsingh9767](https://github.com/jayeshsingh9767))
### Maintenance and upkeep improvements
- Fix typings [#7110](https://github.com/jupyter/notebook/pull/7110) ([@jtpio](https://github.com/jtpio))
- Bump postcss from 8.4.27 to 8.4.31 [#7089](https://github.com/jupyter/notebook/pull/7089) ([@dependabot](https://github.com/dependabot))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-10-12&to=2023-10-17&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-10-12..2023-10-17&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-10-12..2023-10-17&type=Issues) | [@jayeshsingh9767](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajayeshsingh9767+updated%3A2023-10-12..2023-10-17&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-10-12..2023-10-17&type=Issues)
## 7.0.5
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/app@7.0.4...839193d07f0780ded6f559892517f061f3776b02))
### Enhancements made
- Update to JupyterLab 4.0.7 [#7103](https://github.com/jupyter/notebook/pull/7103) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update `permissions` in the galata snapshot workflow [#7105](https://github.com/jupyter/notebook/pull/7105) ([@jtpio](https://github.com/jtpio))
- Fix typings check on CI [#7104](https://github.com/jupyter/notebook/pull/7104) ([@jtpio](https://github.com/jtpio))
- Ignore yarn.lock for codespell [#7098](https://github.com/jupyter/notebook/pull/7098) ([@jtpio](https://github.com/jtpio))
- Remove link to the PDF documentation [#7094](https://github.com/jupyter/notebook/pull/7094) ([@jtpio](https://github.com/jtpio))
- Bump postcss from 8.4.23 to 8.4.31 in /ui-tests [#7088](https://github.com/jupyter/notebook/pull/7088) ([@dependabot](https://github.com/dependabot))
- React to the galata update comment [#7086](https://github.com/jupyter/notebook/pull/7086) ([@jtpio](https://github.com/jtpio))
- Switch from `hub` to `gh` in the Playwright snapshots update workflow [#7085](https://github.com/jupyter/notebook/pull/7085) ([@jtpio](https://github.com/jtpio))
- chore: update pre-commit hooks [#7084](https://github.com/jupyter/notebook/pull/7084) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Fix traitlets typing [#7082](https://github.com/jupyter/notebook/pull/7082) ([@jtpio](https://github.com/jtpio))
- Bump toshimaru/auto-author-assign from 2.0.0 to 2.0.1 [#7080](https://github.com/jupyter/notebook/pull/7080) ([@dependabot](https://github.com/dependabot))
- Bump toshimaru/auto-author-assign from 1.6.2 to 2.0.0 [#7072](https://github.com/jupyter/notebook/pull/7072) ([@dependabot](https://github.com/dependabot))
- ci: set minimal permissions to workflows [#7070](https://github.com/jupyter/notebook/pull/7070) ([@diogoteles08](https://github.com/diogoteles08))
- Bump systeminformation from 5.17.12 to 5.21.8 in /ui-tests [#7064](https://github.com/jupyter/notebook/pull/7064) ([@dependabot](https://github.com/dependabot))
### Documentation improvements
- Improve docs setup (SVG logos, repo links) [#7074](https://github.com/jupyter/notebook/pull/7074) ([@krassowski](https://github.com/krassowski))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-09-20&to=2023-10-12&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-09-20..2023-10-12&type=Issues) | [@diogoteles08](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adiogoteles08+updated%3A2023-09-20..2023-10-12&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-09-20..2023-10-12&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-09-20..2023-10-12&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2023-09-20..2023-10-12&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-09-20..2023-10-12&type=Issues)
## 7.0.4
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/app@7.0.3...0e62386fc71ed4bd424c989f9d5493ca346f1d9a))
### Enhancements made
- Update to JupyterLab 4.0.6 [#7049](https://github.com/jupyter/notebook/pull/7049) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix `app_version` [#7061](https://github.com/jupyter/notebook/pull/7061) ([@jtpio](https://github.com/jtpio))
- fix trusted status indication [#7036](https://github.com/jupyter/notebook/pull/7036) ([@adigaboy](https://github.com/adigaboy))
### Maintenance and upkeep improvements
- Update Binder environment [#7059](https://github.com/jupyter/notebook/pull/7059) ([@jtpio](https://github.com/jtpio))
- Add `deduplicate` top-level script [#7058](https://github.com/jupyter/notebook/pull/7058) ([@jtpio](https://github.com/jtpio))
- Move opening path in new browser tabs to a separate plugin [#7056](https://github.com/jupyter/notebook/pull/7056) ([@jtpio](https://github.com/jtpio))
- Enable the Playwright trace [#7050](https://github.com/jupyter/notebook/pull/7050) ([@jtpio](https://github.com/jtpio))
- Bump actions/checkout from 3 to 4 [#7040](https://github.com/jupyter/notebook/pull/7040) ([@dependabot](https://github.com/dependabot))
- Adopt sp-repo-review [#7039](https://github.com/jupyter/notebook/pull/7039) ([@blink1073](https://github.com/blink1073))
- Add `datetime.datetime.utc()` to the filter list [#7037](https://github.com/jupyter/notebook/pull/7037) ([@jtpio](https://github.com/jtpio))
- Fix docs build on Gitpod [#7026](https://github.com/jupyter/notebook/pull/7026) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-08-30&to=2023-09-20&type=c))
[@adigaboy](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aadigaboy+updated%3A2023-08-30..2023-09-20&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-08-30..2023-09-20&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-08-30..2023-09-20&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-08-30..2023-09-20&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-08-30..2023-09-20&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-08-30..2023-09-20&type=Issues)
## 7.0.3
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/app@7.0.2...e2eb8f2a166ba7b339309b8bfbff40e6c9e0a9b9))
### Bugs fixed
- Require importlib_resources for testing on Python \< 3.10 [#7016](https://github.com/jupyter/notebook/pull/7016) ([@bnavigator](https://github.com/bnavigator))
- Fix Python 3.12 compatibility [#6965](https://github.com/jupyter/notebook/pull/6965) ([@frenzymadness](https://github.com/frenzymadness))
### Maintenance and upkeep improvements
- Update to JupyterLab 4.0.5 [#7013](https://github.com/jupyter/notebook/pull/7013) ([@jtpio](https://github.com/jtpio))
- Test against Python 3.12 [#6999](https://github.com/jupyter/notebook/pull/6999) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Mention the nx graph in the contributing guide [#7001](https://github.com/jupyter/notebook/pull/7001) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-08-04&to=2023-08-30&type=c))
[@bnavigator](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abnavigator+updated%3A2023-08-04..2023-08-30&type=Issues) | [@defjaf](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adefjaf+updated%3A2023-08-04..2023-08-30&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2023-08-04..2023-08-30&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-08-04..2023-08-30&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-08-04..2023-08-30&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2023-08-04..2023-08-30&type=Issues)
## 7.0.2
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/app@7.0.1...af5edd42374cadba65feed2e6828b1ef96295daf))
### Enhancements made
- Update to JupyterLab 4.0.4 packages [#6998](https://github.com/jupyter/notebook/pull/6998) ([@jtpio](https://github.com/jtpio))
- Improve about dialog [#6996](https://github.com/jupyter/notebook/pull/6996) ([@yjrab](https://github.com/yjrab))
- Added documentation link in Help menu [#6993](https://github.com/jupyter/notebook/pull/6993) ([@Mikil03](https://github.com/Mikil03))
### Bugs fixed
- Remove `RedirectHandler` [#6997](https://github.com/jupyter/notebook/pull/6997) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-07-31&to=2023-08-04&type=c))
[@echarles](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aecharles+updated%3A2023-07-31..2023-08-04&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-07-31..2023-08-04&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-07-31..2023-08-04&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2023-07-31..2023-08-04&type=Issues) | [@Mikil03](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AMikil03+updated%3A2023-07-31..2023-08-04&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-07-31..2023-08-04&type=Issues) | [@shaneknapp](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ashaneknapp+updated%3A2023-07-31..2023-08-04&type=Issues) | [@yjrab](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ayjrab+updated%3A2023-07-31..2023-08-04&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2023-07-31..2023-08-04&type=Issues)
## 7.0.1
([Full Changelog](https://github.com/jupyter/notebook/compare/@jupyter-notebook/app@7.0.0...ac3c882a246b46c15c1963ef4b65427a4257b132))
### Enhancements made
- Update accessibly compliance section in the docs [#6982](https://github.com/jupyter/notebook/pull/6982) ([@andrii-i](https://github.com/andrii-i))
- Update the browser tab favicon on kernel busy [#6980](https://github.com/jupyter/notebook/pull/6980) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Bump `word-wrap` and `semver` [#6979](https://github.com/jupyter/notebook/pull/6979) ([@jtpio](https://github.com/jtpio))
- Enable lerna caching for build scripts [#6767](https://github.com/jupyter/notebook/pull/6767) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Update accessibly compliance section in the docs [#6982](https://github.com/jupyter/notebook/pull/6982) ([@andrii-i](https://github.com/andrii-i))
- Fix link in `README.md` [#6973](https://github.com/jupyter/notebook/pull/6973) ([@jtpio](https://github.com/jtpio))
- The future is now [#6972](https://github.com/jupyter/notebook/pull/6972) ([@frenzymadness](https://github.com/frenzymadness))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-07-19&to=2023-07-31&type=c))
[@andrii-i](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2023-07-19..2023-07-31&type=Issues) | [@echarles](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aecharles+updated%3A2023-07-19..2023-07-31&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2023-07-19..2023-07-31&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-07-19..2023-07-31&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-07-19..2023-07-31&type=Issues) | [@prof-lupin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aprof-lupin+updated%3A2023-07-19..2023-07-31&type=Issues)
## 7.0.0
Jupyter Notebook 7 is released :tada:
Check the changelog: https://jupyter-notebook.readthedocs.io/en/latest/changelog.html
And the new features in Notebook 7: https://jupyter-notebook.readthedocs.io/en/latest/notebook_7_features.html
Migration Guide: https://jupyter-notebook.readthedocs.io/en/latest/migrate_to_notebook7.html
______________________________________________________________________
For reference here is the changelog since the last `7.0.0rc2` release.
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0rc2...2be98e8f39af7f3ec2729006018f6baf0998f94b))
### Bugs fixed
- Update Jupytext Notebook url path [#6961](https://github.com/jupyter/notebook/pull/6961) ([@RRosio](https://github.com/RRosio))
### Maintenance and upkeep improvements
- Fix hatch version when going from rc [#6971](https://github.com/jupyter/notebook/pull/6971) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.0.3 [#6967](https://github.com/jupyter/notebook/pull/6967) ([@jtpio](https://github.com/jtpio))
- Bump semver from 7.5.0 to 7.5.3 in /ui-tests [#6950](https://github.com/jupyter/notebook/pull/6950) ([@dependabot](https://github.com/dependabot))
### Documentation improvements
- fix: update link to troubleshooting guidelines [#6964](https://github.com/jupyter/notebook/pull/6964) ([@emmanuel-ferdman](https://github.com/emmanuel-ferdman))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-06-26&to=2023-07-19&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-06-26..2023-07-19&type=Issues) | [@emmanuel-ferdman](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aemmanuel-ferdman+updated%3A2023-06-26..2023-07-19&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-06-26..2023-07-19&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-06-26..2023-07-19&type=Issues) | [@parmentelat](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aparmentelat+updated%3A2023-06-26..2023-07-19&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-06-26..2023-07-19&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2023-06-26..2023-07-19&type=Issues)
## 7.0.0rc2
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0rc1...27c00bc56afaa5b89713f760b0cc6eb88079224e))
### Bugs fixed
- Fix opening files from the CLI [#6946](https://github.com/jupyter/notebook/pull/6946) ([@jtpio](https://github.com/jtpio))
- Fix handling of the base url [#6943](https://github.com/jupyter/notebook/pull/6943) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-06-22&to=2023-06-26&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-06-22..2023-06-26&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-06-22..2023-06-26&type=Issues) | [@parmentelat](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aparmentelat+updated%3A2023-06-22..2023-06-26&type=Issues)
## 7.0.0rc1
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0rc0...8493e1ba21ebaca5c192d68bdc829ccc5b29a799))
### Enhancements made
- Close the browser tab when clicking on "Close and Shut Down Notebook" [#6937](https://github.com/jupyter/notebook/pull/6937) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix the redirect handler [#6941](https://github.com/jupyter/notebook/pull/6941) ([@jtpio](https://github.com/jtpio))
- Make jupyter logo select properly (#6927) [#6938](https://github.com/jupyter/notebook/pull/6938) ([@Cheukting](https://github.com/Cheukting))
### Documentation improvements
- Update issue templates [#6939](https://github.com/jupyter/notebook/pull/6939) ([@RRosio](https://github.com/RRosio))
- Docs parity for find with JupyterLab. [#6917](https://github.com/jupyter/notebook/pull/6917) ([@ericsnekbytes](https://github.com/ericsnekbytes))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-06-19&to=2023-06-22&type=c))
[@andrii-i](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2023-06-19..2023-06-22&type=Issues) | [@Cheukting](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ACheukting+updated%3A2023-06-19..2023-06-22&type=Issues) | [@ericsnekbytes](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aericsnekbytes+updated%3A2023-06-19..2023-06-22&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-06-19..2023-06-22&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-06-19..2023-06-22&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2023-06-19..2023-06-22&type=Issues)
## 7.0.0rc0
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0b4...d0692112a4b2db20c2178205d4b5630184acbf7b))
### Enhancements made
- Update JupyterLab, audit document viewers [#6922](https://github.com/jupyter/notebook/pull/6922) ([@jtpio](https://github.com/jtpio))
- Customize the shell layout with the settings [#6921](https://github.com/jupyter/notebook/pull/6921) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix default viewers override [#6923](https://github.com/jupyter/notebook/pull/6923) ([@jtpio](https://github.com/jtpio))
- Align JupyterHub config with JupyterLab [#6918](https://github.com/jupyter/notebook/pull/6918) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Added example of custom css files [#6919](https://github.com/jupyter/notebook/pull/6919) ([@RRosio](https://github.com/RRosio))
### API and Breaking Changes
- Customize the shell layout with the settings [#6921](https://github.com/jupyter/notebook/pull/6921) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-06-12&to=2023-06-19&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-06-12..2023-06-19&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-06-12..2023-06-19&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2023-06-12..2023-06-19&type=Issues)
## 7.0.0b4
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0b3...ee3e1c221226d482ca1c9bec6362c8af36f1da56))
### Enhancements made
- Rename browser tab title to Home [#6913](https://github.com/jupyter/notebook/pull/6913) ([@Cheukting](https://github.com/Cheukting))
- Add the notification plugin [#6900](https://github.com/jupyter/notebook/pull/6900) ([@jtpio](https://github.com/jtpio))
- Configurable `default_url` for JupyterNotebookApp [#6899](https://github.com/jupyter/notebook/pull/6899) ([@paulgb](https://github.com/paulgb))
- Enhancement: Added drop shadows to markdown, text, and tree views [#6893](https://github.com/jupyter/notebook/pull/6893) ([@rielAsh24](https://github.com/rielAsh24))
- Update to JupyterLab 4.0.1 [#6892](https://github.com/jupyter/notebook/pull/6892) ([@jtpio](https://github.com/jtpio))
- Add file browser actions to the file browser toolbar [#6888](https://github.com/jupyter/notebook/pull/6888) ([@jtpio](https://github.com/jtpio))
- Add option to open a notebook in NbClassic if it is installed; show "Open in..." dropdown menu if there are multiple options, show single button otherwise [#6866](https://github.com/jupyter/notebook/pull/6866) ([@andrii-i](https://github.com/andrii-i))
- Load custom CSS [#6841](https://github.com/jupyter/notebook/pull/6841) ([@RRosio](https://github.com/RRosio))
### Bugs fixed
- Add an empty splash screen on notebook launch to avoid a flash of unstyled content [#6911](https://github.com/jupyter/notebook/pull/6911) ([@andrii-i](https://github.com/andrii-i))
- Fix for "find searches only part of the file" bug [#6905](https://github.com/jupyter/notebook/pull/6905) ([@ericsnekbytes](https://github.com/ericsnekbytes))
- Provide a custom rendermime plugin to handle local links [#6885](https://github.com/jupyter/notebook/pull/6885) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Fix check links on CI [#6910](https://github.com/jupyter/notebook/pull/6910) ([@jtpio](https://github.com/jtpio))
- Add `JSONLicenseWebpackPlugin` [#6896](https://github.com/jupyter/notebook/pull/6896) ([@jtpio](https://github.com/jtpio))
- Simplify Gitpod setup [#6894](https://github.com/jupyter/notebook/pull/6894) ([@jtpio](https://github.com/jtpio))
- Fix action name in update workflow [#6884](https://github.com/jupyter/notebook/pull/6884) ([@jtpio](https://github.com/jtpio))
- Fix playwright bot [#6880](https://github.com/jupyter/notebook/pull/6880) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Document how to manage plugins and extensions [#6909](https://github.com/jupyter/notebook/pull/6909) ([@jtpio](https://github.com/jtpio))
- Jupyter Notebook ecosystem docs improvements [#6877](https://github.com/jupyter/notebook/pull/6877) ([@ericsnekbytes](https://github.com/ericsnekbytes))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-05-25&to=2023-06-12&type=c))
[@andrii-i](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2023-05-25..2023-06-12&type=Issues) | [@Cheukting](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ACheukting+updated%3A2023-05-25..2023-06-12&type=Issues) | [@echarles](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aecharles+updated%3A2023-05-25..2023-06-12&type=Issues) | [@ericsnekbytes](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aericsnekbytes+updated%3A2023-05-25..2023-06-12&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-05-25..2023-06-12&type=Issues) | [@henryiii](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ahenryiii+updated%3A2023-05-25..2023-06-12&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-05-25..2023-06-12&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2023-05-25..2023-06-12&type=Issues) | [@paulgb](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apaulgb+updated%3A2023-05-25..2023-06-12&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-05-25..2023-06-12&type=Issues) | [@rielAsh24](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ArielAsh24+updated%3A2023-05-25..2023-06-12&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2023-05-25..2023-06-12&type=Issues) | [@yuvipanda](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ayuvipanda+updated%3A2023-05-25..2023-06-12&type=Issues)
## 7.0.0b3
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0b2...93e4d5e1c6ed7a3a4875eed284255587ac293819))
### Enhancements made
- Copy edits for `migrate_to_notebook7` [#6879](https://github.com/jupyter/notebook/pull/6879) ([@JasonWeill](https://github.com/JasonWeill))
- Enable add a cell button [#6872](https://github.com/jupyter/notebook/pull/6872) ([@tuncbkose](https://github.com/tuncbkose))
- Update to JupyterLab 4 final [#6871](https://github.com/jupyter/notebook/pull/6871) ([@jtpio](https://github.com/jtpio))
- Remove "Close Tab" menu entry [#6843](https://github.com/jupyter/notebook/pull/6843) ([@timmerk3](https://github.com/timmerk3))
### Bugs fixed
- Fix handling of the default factory in the URL [#6873](https://github.com/jupyter/notebook/pull/6873) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update to Playwright 1.33 [#6874](https://github.com/jupyter/notebook/pull/6874) ([@jtpio](https://github.com/jtpio))
- Fix check links on CI [#6870](https://github.com/jupyter/notebook/pull/6870) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Copy edits for `migrate_to_notebook7` [#6879](https://github.com/jupyter/notebook/pull/6879) ([@JasonWeill](https://github.com/JasonWeill))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-05-09&to=2023-05-25&type=c))
[@andrii-i](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2023-05-09..2023-05-25&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-05-09..2023-05-25&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2023-05-09..2023-05-25&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-05-09..2023-05-25&type=Issues) | [@timmerk3](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atimmerk3+updated%3A2023-05-09..2023-05-25&type=Issues) | [@tuncbkose](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atuncbkose+updated%3A2023-05-09..2023-05-25&type=Issues)
## 7.0.0b2
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0b1...c0071d796019c0221df4900313b51c0529438bcf))
### Enhancements made
- Update to JupyterLab 4.0.0rc1 [#6864](https://github.com/jupyter/notebook/pull/6864) ([@jtpio](https://github.com/jtpio))
- Change "Interface" menu to "Open in...", shorten names of menu items inside [#6847](https://github.com/jupyter/notebook/pull/6847) ([@andrii-i](https://github.com/andrii-i))
- Add Skip Link to Notebook [#6844](https://github.com/jupyter/notebook/pull/6844) ([@seirani](https://github.com/seirani))
### Bugs fixed
- Fix top bar visibility not picking up settings overrides (#6833) [#6836](https://github.com/jupyter/notebook/pull/6836) ([@yumyumqing](https://github.com/yumyumqing))
### Maintenance and upkeep improvements
- Update RTD image [#6861](https://github.com/jupyter/notebook/pull/6861) ([@blink1073](https://github.com/blink1073))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-04-28&to=2023-05-09&type=c))
[@andrii-i](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aandrii-i+updated%3A2023-04-28..2023-05-09&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-04-28..2023-05-09&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-04-28..2023-05-09&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-04-28..2023-05-09&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-04-28..2023-05-09&type=Issues) | [@seirani](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aseirani+updated%3A2023-04-28..2023-05-09&type=Issues) | [@yumyumqing](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ayumyumqing+updated%3A2023-04-28..2023-05-09&type=Issues)
## 7.0.0b1
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0b0...4b6af274b24bcc20e43ad2330c9243c8d2c7d552))
### Enhancements made
- Update to JupyterLab 4.0.0rc0 [#6853](https://github.com/jupyter/notebook/pull/6853) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab `4.0.0b1` and `4.0.0b2` [#6838](https://github.com/jupyter/notebook/pull/6838) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fixes the notebooktools [#6834](https://github.com/jupyter/notebook/pull/6834) ([@brichet](https://github.com/brichet))
### Maintenance and upkeep improvements
- Use local coverage [#6839](https://github.com/jupyter/notebook/pull/6839) ([@blink1073](https://github.com/blink1073))
### Documentation improvements
- Added extra information and user-action summaries to 7 migration docs. [#6850](https://github.com/jupyter/notebook/pull/6850) ([@ericsnekbytes](https://github.com/ericsnekbytes))
- Rename migration file to `migrate_to_notebook7` [#6831](https://github.com/jupyter/notebook/pull/6831) ([@jtpio](https://github.com/jtpio))
- Use correct canonical URL while building docs [#6829](https://github.com/jupyter/notebook/pull/6829) ([@ashwinvis](https://github.com/ashwinvis))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-04-04&to=2023-04-28&type=c))
[@ashwinvis](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aashwinvis+updated%3A2023-04-04..2023-04-28&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-04-04..2023-04-28&type=Issues) | [@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2023-04-04..2023-04-28&type=Issues) | [@ericsnekbytes](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aericsnekbytes+updated%3A2023-04-04..2023-04-28&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-04-04..2023-04-28&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-04-04..2023-04-28&type=Issues)
## 7.0.0b0
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a18...b99718f57a8beac7b4019901a57c94984781dd49))
### Enhancements made
- Update to JupyterLab `4.0.0b0` [#6803](https://github.com/jupyter/notebook/pull/6803) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- added white space to bottom of edit files [#6804](https://github.com/jupyter/notebook/pull/6804) ([@jesuscastillx](https://github.com/jesuscastillx))
- Hides 'micro' toolbars in notebook [#6791](https://github.com/jupyter/notebook/pull/6791) ([@JasonWeill](https://github.com/JasonWeill))
### Maintenance and upkeep improvements
- Add missing singleton packages for RTC [#6816](https://github.com/jupyter/notebook/pull/6816) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Improve the documentation for Notebook 7 [#6813](https://github.com/jupyter/notebook/pull/6813) ([@jtpio](https://github.com/jtpio))
- fix typo in the migration guide [#6812](https://github.com/jupyter/notebook/pull/6812) ([@Tiksagol](https://github.com/Tiksagol))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-03-24&to=2023-04-04&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-03-24..2023-04-04&type=Issues) | [@j-publius](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aj-publius+updated%3A2023-03-24..2023-04-04&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2023-03-24..2023-04-04&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-03-24..2023-04-04&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-03-24..2023-04-04&type=Issues) | [@Tiksagol](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ATiksagol+updated%3A2023-03-24..2023-04-04&type=Issues)
## 7.0.0a18
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a17...253efe279f8c8005f016f3dfe28c22233ee1d2dd))
### Enhancements made
- Add back the `csvviewer-extension` [#6799](https://github.com/jupyter/notebook/pull/6799) ([@jtpio](https://github.com/jtpio))
- Fix JSON setting editor not opening issue [#6795](https://github.com/jupyter/notebook/pull/6795) ([@yumyumqing](https://github.com/yumyumqing))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-03-20&to=2023-03-24&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-03-20..2023-03-24&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-03-20..2023-03-24&type=Issues) | [@yumyumqing](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ayumyumqing+updated%3A2023-03-20..2023-03-24&type=Issues)
## 7.0.0a17
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a16...7903de83e83a6ce342d71895dc1e8c2ec8128174))
### Highlights
This major change in this release is the update to the latest JupyterLab `4.0.0a37`.
Check out the [JupyterLab `4.0.0a37` release notes](https://github.com/jupyterlab/jupyterlab/releases/tag/v4.0.0a37) for more details.
### Enhancements made
- Update to JupyterLab 4.0.0a37 [#6777](https://github.com/jupyter/notebook/pull/6777) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Replace the use of `toArray` by `Array.from` [#6775](https://github.com/jupyter/notebook/pull/6775) (`@tarunsamanta2k20`)
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-03-15&to=2023-03-20&type=c))
[@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-03-15..2023-03-20&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-03-15..2023-03-20&type=Issues) | [@tarunsamanta2k20](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atarunsamanta2k20+updated%3A2023-03-15..2023-03-20&type=Issues)
## 7.0.0a16
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a15...0faa88c8b65e0302f1904e4ca9cd2e551525f352))
### Enhancements made
- Update to JupyterLab 4.0.0a36 [#6773](https://github.com/jupyter/notebook/pull/6773) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Clean up interface switcher plugin in preparation for release [#6766](https://github.com/jupyter/notebook/pull/6766) ([@afshin](https://github.com/afshin))
- Remove empty `py.test` file [#6764](https://github.com/jupyter/notebook/pull/6764) ([@frenzymadness](https://github.com/frenzymadness))
### Documentation improvements
- Add documentation for contributing to the docs [#6771](https://github.com/jupyter/notebook/pull/6771) ([@jtpio](https://github.com/jtpio))
- Convert docs to Markdown [#6770](https://github.com/jupyter/notebook/pull/6770) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-03-08&to=2023-03-15&type=c))
[@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2023-03-08..2023-03-15&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2023-03-08..2023-03-15&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-03-08..2023-03-15&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-03-08..2023-03-15&type=Issues)
## 7.0.0a15
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a14...1ccb8f15d6bf3557eed2405438a9df3c1d6cd040))
### Enhancements made
- Update to JupyterLab 4.0.0a35 [#6757](https://github.com/jupyter/notebook/pull/6757) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Bump vega from 5.22.1 to 5.23.0 in /ui-tests [#6756](https://github.com/jupyter/notebook/pull/6756) ([@dependabot](https://github.com/dependabot))
- Bump vega-functions from 5.13.0 to 5.13.1 in /ui-tests [#6754](https://github.com/jupyter/notebook/pull/6754) ([@dependabot](https://github.com/dependabot))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-03-01&to=2023-03-08&type=c))
[@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2023-03-01..2023-03-08&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-03-01..2023-03-08&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-03-01..2023-03-08&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-03-01..2023-03-08&type=Issues)
## 7.0.0a14
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a13...f9e427cf4e92dbaa5794fe0331ca92b41d45d52c))
### Enhancements made
- Fix loading of plugins [#6750](https://github.com/jupyter/notebook/pull/6750) ([@jtpio](https://github.com/jtpio))
- Add the extension manager [#6747](https://github.com/jupyter/notebook/pull/6747) ([@jtpio](https://github.com/jtpio))
- File browser CSS tweaks [#6738](https://github.com/jupyter/notebook/pull/6738) ([@jtpio](https://github.com/jtpio))
- Add trusted indicator [#6736](https://github.com/jupyter/notebook/pull/6736) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Clean up license [#6743](https://github.com/jupyter/notebook/pull/6743) ([@dcsaba89](https://github.com/dcsaba89))
- Update to TypeScript 5 [#6735](https://github.com/jupyter/notebook/pull/6735) ([@jtpio](https://github.com/jtpio))
- Enable `nx` [#6718](https://github.com/jupyter/notebook/pull/6718) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Corrected "Recomment" to "Recommend" [#6741](https://github.com/jupyter/notebook/pull/6741) ([@Tony-j77](https://github.com/Tony-j77))
- Docs: add migrate to notebook7 page [#6737](https://github.com/jupyter/notebook/pull/6737) ([@echarles](https://github.com/echarles))
- Add section about updating reference snapshots [#6733](https://github.com/jupyter/notebook/pull/6733) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-02-15&to=2023-03-01&type=c))
[@dcsaba89](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adcsaba89+updated%3A2023-02-15..2023-03-01&type=Issues) | [@echarles](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aecharles+updated%3A2023-02-15..2023-03-01&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-02-15..2023-03-01&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-02-15..2023-03-01&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2023-02-15..2023-03-01&type=Issues) | [@Tony-j77](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ATony-j77+updated%3A2023-02-15..2023-03-01&type=Issues)
## 7.0.0a13
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a12...ef67879306b27dfa78b8d639d9cc142b50f8c7ba))
### Enhancements made
- Update to JupyterLab 4.0.0a34 [#6732](https://github.com/jupyter/notebook/pull/6732) ([@jtpio](https://github.com/jtpio))
- Hide the debugger button on mobile [#6731](https://github.com/jupyter/notebook/pull/6731) ([@jtpio](https://github.com/jtpio))
- Adds translator to the NotebookShell [#6725](https://github.com/jupyter/notebook/pull/6725) ([@brichet](https://github.com/brichet))
- Resolving some accessibility issues [#6719](https://github.com/jupyter/notebook/pull/6719) ([@brichet](https://github.com/brichet))
### Maintenance and upkeep improvements
- Fix Playwright snapshot update workflow [#6724](https://github.com/jupyter/notebook/pull/6724) ([@jtpio](https://github.com/jtpio))
- Add workflow to update snapshots [#6723](https://github.com/jupyter/notebook/pull/6723) ([@jtpio](https://github.com/jtpio))
- Use Playwright `webServer` [#6720](https://github.com/jupyter/notebook/pull/6720) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-02-08&to=2023-02-15&type=c))
[@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2023-02-08..2023-02-15&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-02-08..2023-02-15&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-02-08..2023-02-15&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2023-02-08..2023-02-15&type=Issues)
## 7.0.0a12
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a11...27c2bfbb80d42a3fd2541b13fae6143e2e91e4dd))
### Enhancements made
- Update to JupyterLab 4.0.0a33 [#6713](https://github.com/jupyter/notebook/pull/6713) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Add more lint checks [#6706](https://github.com/jupyter/notebook/pull/6706) ([@blink1073](https://github.com/blink1073))
- Reintroduce desktop file [#6705](https://github.com/jupyter/notebook/pull/6705) ([@frenzymadness](https://github.com/frenzymadness))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-01-19&to=2023-02-08&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-01-19..2023-02-08&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2023-01-19..2023-02-08&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-01-19..2023-02-08&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-01-19..2023-02-08&type=Issues)
## 7.0.0a11
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a10...6d4eeed9d176e2523be7874ae4d9f46a99422d72))
### Enhancements made
- Tree view enhancement [#6588](https://github.com/jupyter/notebook/pull/6588) ([@brichet](https://github.com/brichet))
- Add the Settings Editor to the landing page [#6316](https://github.com/jupyter/notebook/pull/6316) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix console error when adding a widget to a side panel [#6694](https://github.com/jupyter/notebook/pull/6694) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Help-extension split into multiple plugins [#6700](https://github.com/jupyter/notebook/pull/6700) ([@RRosio](https://github.com/RRosio))
- Add releaser workflows [#6698](https://github.com/jupyter/notebook/pull/6698) ([@blink1073](https://github.com/blink1073))
- Create `auto_author_assign.yml` workflow [#6696](https://github.com/jupyter/notebook/pull/6696) ([@jtpio](https://github.com/jtpio))
- Add back `# type:ignore` [#6695](https://github.com/jupyter/notebook/pull/6695) ([@jtpio](https://github.com/jtpio))
- Fix environment activation on Gitpod [#6693](https://github.com/jupyter/notebook/pull/6693) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2023-01-09&to=2023-01-19&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2023-01-09..2023-01-19&type=Issues) | [@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2023-01-09..2023-01-19&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2023-01-09..2023-01-19&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2023-01-09..2023-01-19&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2023-01-09..2023-01-19&type=Issues)
## 7.0.0a10
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a9...6205bf376f783b7202af71e1074f44086ee7056c))
### Enhancements made
- Update to JupyterLab 4.0.0a32 [#6678](https://github.com/jupyter/notebook/pull/6678) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Bump json5 from 2.2.1 to 2.2.3 in /ui-tests [#6684](https://github.com/jupyter/notebook/pull/6684) ([@dependabot](https://github.com/dependabot))
- Bump json5 from 1.0.1 to 1.0.2 [#6681](https://github.com/jupyter/notebook/pull/6681) ([@dependabot](https://github.com/dependabot))
- Update the copyright date to 2023 in the about dialog [#6679](https://github.com/jupyter/notebook/pull/6679) ([@jtpio](https://github.com/jtpio))
- Fix `check_links` and `Test Lint` CI failures [#6675](https://github.com/jupyter/notebook/pull/6675) ([@jtpio](https://github.com/jtpio))
- Add spelling and docstring enforcement [#6669](https://github.com/jupyter/notebook/pull/6669) ([@blink1073](https://github.com/blink1073))
- CI Cleanup [#6667](https://github.com/jupyter/notebook/pull/6667) ([@blink1073](https://github.com/blink1073))
- Adopt ruff and typing [#6658](https://github.com/jupyter/notebook/pull/6658) ([@blink1073](https://github.com/blink1073))
- Bump decode-uri-component from 0.2.0 to 0.2.2 [#6651](https://github.com/jupyter/notebook/pull/6651) ([@dependabot](https://github.com/dependabot))
- Bump dessant/lock-threads from 3 to 4 [#6650](https://github.com/jupyter/notebook/pull/6650) ([@dependabot](https://github.com/dependabot))
- Update to TypeScript 4.9 [#6640](https://github.com/jupyter/notebook/pull/6640) ([@jtpio](https://github.com/jtpio))
- Add more Python tests [#6639](https://github.com/jupyter/notebook/pull/6639) ([@blink1073](https://github.com/blink1073))
- use main branch for config [#6638](https://github.com/jupyter/notebook/pull/6638) ([@blink1073](https://github.com/blink1073))
- Clean up workflows [#6635](https://github.com/jupyter/notebook/pull/6635) ([@blink1073](https://github.com/blink1073))
- CI Cleanup [#6631](https://github.com/jupyter/notebook/pull/6631) ([@blink1073](https://github.com/blink1073))
- Fix issue template formatting [#6626](https://github.com/jupyter/notebook/pull/6626) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Remove PDF link to Jupyter Notebook docs [#6648](https://github.com/jupyter/notebook/pull/6648) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-11-21&to=2023-01-09&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2022-11-21..2023-01-09&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2022-11-21..2023-01-09&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-11-21..2023-01-09&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-11-21..2023-01-09&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-11-21..2023-01-09&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2022-11-21..2023-01-09&type=Issues) | [@yacchin1205](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ayacchin1205+updated%3A2022-11-21..2023-01-09&type=Issues)
## 7.0.0a9
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a8...b4006ce47bf37b31a7049a77971d7e5db1070660))
### Enhancements made
- Update to JupyterLab 4.0.0a31 [#6627](https://github.com/jupyter/notebook/pull/6627) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Explicitly specify favicon for /tree view in Notebook [#6608](https://github.com/jupyter/notebook/pull/6608) ([@mcrutch](https://github.com/mcrutch))
### Maintenance and upkeep improvements
- Add run-p (npm-run-all) to dev dependencies [#6629](https://github.com/jupyter/notebook/pull/6629) ([@gabalafou](https://github.com/gabalafou))
- Moves panel related objects to a dedicated module file [#6625](https://github.com/jupyter/notebook/pull/6625) ([@brichet](https://github.com/brichet))
- Use pathlib instead of os.path.join in `tests/conftest.py` [#6624](https://github.com/jupyter/notebook/pull/6624) ([@kianelbo](https://github.com/kianelbo))
- Bump loader-utils from 1.4.1 to 1.4.2 [#6623](https://github.com/jupyter/notebook/pull/6623) ([@dependabot](https://github.com/dependabot))
- Bump to Python 3.11 on CI [#6600](https://github.com/jupyter/notebook/pull/6600) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-11-11&to=2022-11-21&type=c))
[@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2022-11-11..2022-11-21&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2022-11-11..2022-11-21&type=Issues) | [@fcollonval](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afcollonval+updated%3A2022-11-11..2022-11-21&type=Issues) | [@gabalafou](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agabalafou+updated%3A2022-11-11..2022-11-21&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-11-11..2022-11-21&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-11-11..2022-11-21&type=Issues) | [@kianelbo](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akianelbo+updated%3A2022-11-11..2022-11-21&type=Issues) | [@mcrutch](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amcrutch+updated%3A2022-11-11..2022-11-21&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-11-11..2022-11-21&type=Issues)
## 7.0.0a8
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a7...9141f3eabb6a10a5bf742b26713405f9768cb6d2))
### Enhancements made
- Restyle about dialog [#6592](https://github.com/jupyter/notebook/pull/6592) ([@kostyafarber](https://github.com/kostyafarber))
### Bugs fixed
- Fix async contents handling and add test [#6616](https://github.com/jupyter/notebook/pull/6616) ([@blink1073](https://github.com/blink1073))
- Fix PDF renderer [#6584](https://github.com/jupyter/notebook/pull/6584) ([@brichet](https://github.com/brichet))
- Fix HTML viewer [#6583](https://github.com/jupyter/notebook/pull/6583) ([@brichet](https://github.com/brichet))
### Maintenance and upkeep improvements
- Bump loader-utils from 1.4.0 to 1.4.1 [#6615](https://github.com/jupyter/notebook/pull/6615) ([@dependabot](https://github.com/dependabot))
- Bump dessant/lock-threads from 2 to 3 [#6587](https://github.com/jupyter/notebook/pull/6587) ([@dependabot](https://github.com/dependabot))
- Add dependabot config to update GitHub Actions [#6586](https://github.com/jupyter/notebook/pull/6586) ([@jtpio](https://github.com/jtpio))
- Update `actions/checkout` and `actions/download-artifact` [#6585](https://github.com/jupyter/notebook/pull/6585) ([@jtpio](https://github.com/jtpio))
- Maintenance cleanup [#6581](https://github.com/jupyter/notebook/pull/6581) ([@blink1073](https://github.com/blink1073))
- Update to lerna 6 [#6579](https://github.com/jupyter/notebook/pull/6579) ([@jtpio](https://github.com/jtpio))
- Remove the `nbclassic` explicit uninstall on Binder [#6548](https://github.com/jupyter/notebook/pull/6548) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-10-13&to=2022-11-11&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2022-10-13..2022-11-11&type=Issues) | [@bnavigator](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abnavigator+updated%3A2022-10-13..2022-11-11&type=Issues) | [@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2022-10-13..2022-11-11&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2022-10-13..2022-11-11&type=Issues) | [@echarles](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aecharles+updated%3A2022-10-13..2022-11-11&type=Issues) | [@fcollonval](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afcollonval+updated%3A2022-10-13..2022-11-11&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-10-13..2022-11-11&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-10-13..2022-11-11&type=Issues) | [@kostyafarber](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akostyafarber+updated%3A2022-10-13..2022-11-11&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-10-13..2022-11-11&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2022-10-13..2022-11-11&type=Issues) | [@venkatasg](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Avenkatasg+updated%3A2022-10-13..2022-11-11&type=Issues)
## 7.0.0a7
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a6...caa0a11e36901c08ae80100fe2bbc5161c47dfee))
### Enhancements made
- Fixed user menu alignment [#6565](https://github.com/jupyter/notebook/pull/6565) ([@Mieju](https://github.com/Mieju))
- Support for Left and Right panels [#6487](https://github.com/jupyter/notebook/pull/6487) ([@brichet](https://github.com/brichet))
### Maintenance and upkeep improvements
- Update to JupyterLab 4.0.0a30 [#6566](https://github.com/jupyter/notebook/pull/6566) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- Fix typo in CHANGELOG.md [#6561](https://github.com/jupyter/notebook/pull/6561) ([@eltociear](https://github.com/eltociear))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-10-03&to=2022-10-13&type=c))
[@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2022-10-03..2022-10-13&type=Issues) | [@eltociear](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aeltociear+updated%3A2022-10-03..2022-10-13&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-10-03..2022-10-13&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-10-03..2022-10-13&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2022-10-03..2022-10-13&type=Issues) | [@Mieju](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AMieju+updated%3A2022-10-03..2022-10-13&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-10-03..2022-10-13&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2022-10-03..2022-10-13&type=Issues)
## 7.0.0a6
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a5...acbec17feca2ae8a0f56c5ec04ba2475a42619ee))
### Enhancements made
- Add token on tree widget [#6496](https://github.com/jupyter/notebook/pull/6496) ([@brichet](https://github.com/brichet))
- Updates README to document maintained versions [#6480](https://github.com/jupyter/notebook/pull/6480) ([@JasonWeill](https://github.com/JasonWeill))
- Change the tab renderer to allow adding closable tab [#6477](https://github.com/jupyter/notebook/pull/6477) ([@brichet](https://github.com/brichet))
### Bugs fixed
- Fix: No mouse pointer when hovering on the Jupyter icon [#6550](https://github.com/jupyter/notebook/pull/6550) ([@hawkeyes21](https://github.com/hawkeyes21))
### Maintenance and upkeep improvements
- Switch to hatch for python version [#6544](https://github.com/jupyter/notebook/pull/6544) ([@blink1073](https://github.com/blink1073))
- Update to Lumino 2 and JupyterLab 4.0.0a29 [#6539](https://github.com/jupyter/notebook/pull/6539) ([@afshin](https://github.com/afshin))
- Update lerna version [#6535](https://github.com/jupyter/notebook/pull/6535) ([@blink1073](https://github.com/blink1073))
- Add task to auto activate the dev environment on Gitpod [#6527](https://github.com/jupyter/notebook/pull/6527) ([@jtpio](https://github.com/jtpio))
- Troubleshoot failing `macos` check on CI [#6523](https://github.com/jupyter/notebook/pull/6523) ([@jtpio](https://github.com/jtpio))
- Update reference snapshots [#6520](https://github.com/jupyter/notebook/pull/6520) ([@jtpio](https://github.com/jtpio))
- Add Gitpod files [#6518](https://github.com/jupyter/notebook/pull/6518) ([@jtpio](https://github.com/jtpio))
- Adding jupyterlab-probot yml file for labeling new issues [#6506](https://github.com/jupyter/notebook/pull/6506) ([@RRosio](https://github.com/RRosio))
- Uninstall `nbclassic` on Binder so Notebook v7 can load [#6505](https://github.com/jupyter/notebook/pull/6505) ([@jtpio](https://github.com/jtpio))
- Pin `ypy-websocket` to `0.2` [#6499](https://github.com/jupyter/notebook/pull/6499) ([@jtpio](https://github.com/jtpio))
- Bump moment from 2.29.3 to 2.29.4 [#6483](https://github.com/jupyter/notebook/pull/6483) ([@dependabot](https://github.com/dependabot))
- Bump moment from 2.29.2 to 2.29.4 in /ui-tests [#6482](https://github.com/jupyter/notebook/pull/6482) ([@dependabot](https://github.com/dependabot))
- Bump terser from 5.13.1 to 5.14.2 [#6481](https://github.com/jupyter/notebook/pull/6481) ([@dependabot](https://github.com/dependabot))
- Bump parse-url from 6.0.0 to 6.0.2 [#6465](https://github.com/jupyter/notebook/pull/6465) ([@dependabot](https://github.com/dependabot))
- Fix tests [#6464](https://github.com/jupyter/notebook/pull/6464) ([@jtpio](https://github.com/jtpio))
- Bump jpeg-js from 0.4.3 to 0.4.4 in /ui-tests [#6455](https://github.com/jupyter/notebook/pull/6455) ([@dependabot](https://github.com/dependabot))
### Documentation improvements
- Updates README to document maintained versions [#6480](https://github.com/jupyter/notebook/pull/6480) ([@JasonWeill](https://github.com/JasonWeill))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-06-14&to=2022-10-03&type=c))
[@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2022-06-14..2022-10-03&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2022-06-14..2022-10-03&type=Issues) | [@brichet](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abrichet+updated%3A2022-06-14..2022-10-03&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2022-06-14..2022-10-03&type=Issues) | [@echarles](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aecharles+updated%3A2022-06-14..2022-10-03&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-06-14..2022-10-03&type=Issues) | [@hawkeyes21](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ahawkeyes21+updated%3A2022-06-14..2022-10-03&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-06-14..2022-10-03&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2022-06-14..2022-10-03&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-06-14..2022-10-03&type=Issues) | [@RRosio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ARRosio+updated%3A2022-06-14..2022-10-03&type=Issues)
## 7.0.0a5
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a4...614e4780b88f5cf5e2bfda39a55357a0be5ef161))
### Enhancements made
- Add shadow to cells [#6433](https://github.com/jupyter/notebook/pull/6433) ([@trungleduc](https://github.com/trungleduc))
### Maintenance and upkeep improvements
- Fix docs build [#6447](https://github.com/jupyter/notebook/pull/6447) ([@jtpio](https://github.com/jtpio))
- \[pre-commit.ci\] pre-commit autoupdate [#6444](https://github.com/jupyter/notebook/pull/6444) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- \[pre-commit.ci\] pre-commit autoupdate [#6439](https://github.com/jupyter/notebook/pull/6439) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- \[pre-commit.ci\] pre-commit autoupdate [#6434](https://github.com/jupyter/notebook/pull/6434) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Use hatch backend [#6425](https://github.com/jupyter/notebook/pull/6425) ([@blink1073](https://github.com/blink1073))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-05-20&to=2022-06-14&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2022-05-20..2022-06-14&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-05-20..2022-06-14&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-05-20..2022-06-14&type=Issues) | [@ofek](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aofek+updated%3A2022-05-20..2022-06-14&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-05-20..2022-06-14&type=Issues) | [@trungleduc](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atrungleduc+updated%3A2022-05-20..2022-06-14&type=Issues)
## 7.0.0a4
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a3...4bfaaac148a25ba76fcc7416e3a7b2c714b36fcd))
### Enhancements made
- Update to JupyterLab 4.0.0a25 [#6429](https://github.com/jupyter/notebook/pull/6429) ([@jtpio](https://github.com/jtpio))
- Add cell toolbar extension [#6418](https://github.com/jupyter/notebook/pull/6418) ([@jtpio](https://github.com/jtpio))
- add the show header command to the command palette [#6415](https://github.com/jupyter/notebook/pull/6415) ([@jeewonkoo](https://github.com/jeewonkoo))
- Remove the "Appearance" menu entry [#6412](https://github.com/jupyter/notebook/pull/6412) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- \[pre-commit.ci\] pre-commit autoupdate [#6426](https://github.com/jupyter/notebook/pull/6426) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Allow bot PRs to be automatically labeled [#6414](https://github.com/jupyter/notebook/pull/6414) ([@blink1073](https://github.com/blink1073))
- Add Visual Regression Test for the export submenu [#6383](https://github.com/jupyter/notebook/pull/6383) ([@jtpio](https://github.com/jtpio))
- Fix ESLint config for tests [#6382](https://github.com/jupyter/notebook/pull/6382) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-04-27&to=2022-05-20&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2022-04-27..2022-05-20&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-04-27..2022-05-20&type=Issues) | [@jeewonkoo](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajeewonkoo+updated%3A2022-04-27..2022-05-20&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-04-27..2022-05-20&type=Issues) | [@ofek](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aofek+updated%3A2022-04-27..2022-05-20&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-04-27..2022-05-20&type=Issues)
## 7.0.0a3
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a2...4076882c0e08875dd719945835f8cbe5b10eac9e))
### Enhancements made
- Show file checkboxes by default in the file browser [#6377](https://github.com/jupyter/notebook/pull/6377) ([@jtpio](https://github.com/jtpio))
- Remove blank space at the bottom of the notebook [#6376](https://github.com/jupyter/notebook/pull/6376) ([@jtpio](https://github.com/jtpio))
- Add a label to the upload button [#6374](https://github.com/jupyter/notebook/pull/6374) ([@jtpio](https://github.com/jtpio))
- Update to JupyterLab 4.0.0a24 [#6371](https://github.com/jupyter/notebook/pull/6371) ([@jtpio](https://github.com/jtpio))
- Initialize handler page_config from Server traitlets [#6366](https://github.com/jupyter/notebook/pull/6366) ([@bollwyvl](https://github.com/bollwyvl))
- Add project URLs to setup.cfg [#6346](https://github.com/jupyter/notebook/pull/6346) ([@tlinhart](https://github.com/tlinhart))
- Update to JupyterLab 4.0.0a23 [#6336](https://github.com/jupyter/notebook/pull/6336) ([@jtpio](https://github.com/jtpio))
### Bugs fixed
- Fix opening JupyterLab from Notebook [#6379](https://github.com/jupyter/notebook/pull/6379) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Add UI tests for a simple notebook [#6380](https://github.com/jupyter/notebook/pull/6380) ([@jtpio](https://github.com/jtpio))
- Bump async from 2.6.3 to 2.6.4 in /ui-tests [#6370](https://github.com/jupyter/notebook/pull/6370) ([@dependabot](https://github.com/dependabot))
- Fix build workflow on CI [#6369](https://github.com/jupyter/notebook/pull/6369) ([@jtpio](https://github.com/jtpio))
- \[pre-commit.ci\] pre-commit autoupdate [#6365](https://github.com/jupyter/notebook/pull/6365) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- \[pre-commit.ci\] pre-commit autoupdate [#6355](https://github.com/jupyter/notebook/pull/6355) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Bump moment from 2.29.1 to 2.29.2 [#6352](https://github.com/jupyter/notebook/pull/6352) ([@dependabot](https://github.com/dependabot))
- Bump moment from 2.29.1 to 2.29.2 in /ui-tests [#6351](https://github.com/jupyter/notebook/pull/6351) ([@dependabot](https://github.com/dependabot))
- Clean up pre-commit [#6349](https://github.com/jupyter/notebook/pull/6349) ([@blink1073](https://github.com/blink1073))
- Update to TypeScript 4.6 [#6345](https://github.com/jupyter/notebook/pull/6345) ([@jtpio](https://github.com/jtpio))
- \[pre-commit.ci\] pre-commit autoupdate [#6343](https://github.com/jupyter/notebook/pull/6343) ([@pre-commit-ci](https://github.com/pre-commit-ci))
- Add pytest and handle warnings [#6338](https://github.com/jupyter/notebook/pull/6338) ([@blink1073](https://github.com/blink1073))
- Add flake8 and git-blame-ignore-revs [#6337](https://github.com/jupyter/notebook/pull/6337) ([@blink1073](https://github.com/blink1073))
- Run Autoformatters [#6335](https://github.com/jupyter/notebook/pull/6335) ([@blink1073](https://github.com/blink1073))
- Bump minimist from 1.2.5 to 1.2.6 [#6334](https://github.com/jupyter/notebook/pull/6334) ([@dependabot](https://github.com/dependabot))
- Bump minimist from 1.2.5 to 1.2.6 in /ui-tests [#6333](https://github.com/jupyter/notebook/pull/6333) ([@dependabot](https://github.com/dependabot))
- Bump ansi-regex from 3.0.0 to 3.0.1 in /ui-tests [#6332](https://github.com/jupyter/notebook/pull/6332) ([@dependabot](https://github.com/dependabot))
- Adopt pre-commit [#6331](https://github.com/jupyter/notebook/pull/6331) ([@blink1073](https://github.com/blink1073))
### Documentation improvements
- Link to v6 plan in the README [#6375](https://github.com/jupyter/notebook/pull/6375) ([@echarles](https://github.com/echarles))
- Copy edits in config, edits bug report template [#6364](https://github.com/jupyter/notebook/pull/6364) ([@JasonWeill](https://github.com/JasonWeill))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-03-21&to=2022-04-27&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2022-03-21..2022-04-27&type=Issues) | [@bollwyvl](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abollwyvl+updated%3A2022-03-21..2022-04-27&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2022-03-21..2022-04-27&type=Issues) | [@echarles](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aecharles+updated%3A2022-03-21..2022-04-27&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-03-21..2022-04-27&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-03-21..2022-04-27&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2022-03-21..2022-04-27&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apre-commit-ci+updated%3A2022-03-21..2022-04-27&type=Issues) | [@tlinhart](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atlinhart+updated%3A2022-03-21..2022-04-27&type=Issues)
## 7.0.0a2
([Full Changelog](https://github.com/jupyter/notebook/compare/v7.0.0a1...9be03f5f27232d50b16dbbaa50a222260166694c))
### Enhancements made
- Add support for opening a document with a different factory [#6315](https://github.com/jupyter/notebook/pull/6315) ([@jtpio](https://github.com/jtpio))
- Minor copy edit in README [#6313](https://github.com/jupyter/notebook/pull/6313) ([@JasonWeill](https://github.com/JasonWeill))
### Bugs fixed
- Fix rendering of markdown [#6318](https://github.com/jupyter/notebook/pull/6318) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Update to JupyterLab 4.0.0a22 [#6314](https://github.com/jupyter/notebook/pull/6314) ([@jtpio](https://github.com/jtpio))
### Documentation improvements
- docs: fix spelling [#6317](https://github.com/jupyter/notebook/pull/6317) ([@dijonkitchen](https://github.com/dijonkitchen))
- Minor copy edit in README [#6313](https://github.com/jupyter/notebook/pull/6313) ([@JasonWeill](https://github.com/JasonWeill))
- Update example notebook on Binder [#6306](https://github.com/jupyter/notebook/pull/6306) ([@jtpio](https://github.com/jtpio))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-03-09&to=2022-03-21&type=c))
[@dijonkitchen](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adijonkitchen+updated%3A2022-03-09..2022-03-21&type=Issues) | [@fcollonval](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afcollonval+updated%3A2022-03-09..2022-03-21&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-03-09..2022-03-21&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-03-09..2022-03-21&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJasonWeill+updated%3A2022-03-09..2022-03-21&type=Issues)
## 7.0.0a1
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.8...22fe46f3e806aa346625f6ef2f2a024d030a068d))
### Enhancements made
- Notebook v7 scaffolding [#6294](https://github.com/jupyter/notebook/pull/6294) ([@jtpio](https://github.com/jtpio))
### Maintenance and upkeep improvements
- Clean up CI [#6304](https://github.com/jupyter/notebook/pull/6304) ([@blink1073](https://github.com/blink1073))
- Remove the custom run keyboard shortcut [#6303](https://github.com/jupyter/notebook/pull/6303) ([@jtpio](https://github.com/jtpio))
- Bump nanoid from 3.1.30 to 3.3.1 in /ui-tests [#6302](https://github.com/jupyter/notebook/pull/6302) ([@dependabot](https://github.com/dependabot))
- Bump simple-get from 3.1.0 to 3.1.1 in /ui-tests [#6301](https://github.com/jupyter/notebook/pull/6301) ([@dependabot](https://github.com/dependabot))
- Bump url-parse from 1.5.4 to 1.5.10 in /ui-tests [#6300](https://github.com/jupyter/notebook/pull/6300) ([@dependabot](https://github.com/dependabot))
- Bump node-fetch from 2.6.6 to 2.6.7 in /ui-tests [#6299](https://github.com/jupyter/notebook/pull/6299) ([@dependabot](https://github.com/dependabot))
- Bump follow-redirects from 1.14.5 to 1.14.9 in /ui-tests [#6298](https://github.com/jupyter/notebook/pull/6298) ([@dependabot](https://github.com/dependabot))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-01-25&to=2022-03-09&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2022-01-25..2022-03-09&type=Issues) | [@dependabot](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adependabot+updated%3A2022-01-25..2022-03-09&type=Issues) | [@github-actions](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agithub-actions+updated%3A2022-01-25..2022-03-09&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2022-01-25..2022-03-09&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2022-01-25..2022-03-09&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2022-01-25..2022-03-09&type=Issues)
## 6.4.8
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.7...479902d83a691253e0cff8439a33577e82408317))
### Bugs fixed
- Fix to remove potential memory leak on Jupyter Notebooks ZMQChannelHandler code [#6251](https://github.com/jupyter/notebook/pull/6251) ([@Vishwajeet0510](https://github.com/Vishwajeet0510))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2022-01-12&to=2022-01-25&type=c))
[@Vishwajeet0510](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AVishwajeet0510+updated%3A2022-01-12..2022-01-25&type=Issues)
## 6.4.7
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.6...b77b5e38b8fa1a20150d7fa4d735dbf1c4f00418))
### Bugs fixed
- Fix Chinese punctuation [#6268](https://github.com/jupyter/notebook/pull/6268) ([@LiHua-Official](https://github.com/LiHua-Official))
- Add date field to kernel message header [#6265](https://github.com/jupyter/notebook/pull/6265) ([@kevin-bates](https://github.com/kevin-bates))
- Fix deprecation warning [#6253](https://github.com/jupyter/notebook/pull/6253) ([@tornaria](https://github.com/tornaria))
### Maintenance and upkeep improvements
- Enforce labels on PRs [#6235](https://github.com/jupyter/notebook/pull/6235) ([@blink1073](https://github.com/blink1073))
- Fix: CI error for python 3.6 & macOS [#6215](https://github.com/jupyter/notebook/pull/6215) ([@penguinolog](https://github.com/penguinolog))
### Other merged PRs
- handle KeyError when get session [#6245](https://github.com/jupyter/notebook/pull/6245) ([@ccw630](https://github.com/ccw630))
- Updated doc for passwd [#6209](https://github.com/jupyter/notebook/pull/6209) ([@antoinecarme](https://github.com/antoinecarme))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-11-16&to=2022-01-12&type=c))
[@antoinecarme](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aantoinecarme+updated%3A2021-11-16..2022-01-12&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2021-11-16..2022-01-12&type=Issues) | [@ccw630](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Accw630+updated%3A2021-11-16..2022-01-12&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-11-16..2022-01-12&type=Issues) | [@LiHua-Official](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ALiHua-Official+updated%3A2021-11-16..2022-01-12&type=Issues) | [@penguinolog](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Apenguinolog+updated%3A2021-11-16..2022-01-12&type=Issues) | [@tornaria](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atornaria+updated%3A2021-11-16..2022-01-12&type=Issues)
## 6.4.6
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.5...160c27d3c23dafe8b42240571db21b0d5cbae2fe))
### Bugs fixed
- Fix `asyncio` error when opening notebooks [#6221](https://github.com/jupyter/notebook/pull/6221) ([@dleen](https://github.com/dleen))
- Change to use a universal Chinese translation on certain words [#6218](https://github.com/jupyter/notebook/pull/6218) ([@jackexu](https://github.com/jackexu))
- Fix Chinese translation typo [#6211](https://github.com/jupyter/notebook/pull/6211) ([@maliubiao](https://github.com/maliubiao)
- Fix `send2trash` tests failing on Windows [#6127](https://github.com/jupyter/notebook/pull/6127) ([@dolfinus](https://github.com/dolfinus))
### Maintenance and upkeep improvements
- TST: don't look in user site for serverextensions [#6233](https://github.com/jupyter/notebook/pull/6233) ([@bnavigator](https://github.com/bnavigator))
- Enable terminal tests as `pywinpty` is ported for python 3.9 [#6228](https://github.com/jupyter/notebook/pull/6228) (`@nsait-linaro`)
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-10-19&to=2021-11-16&type=c))
[@bnavigator](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abnavigator+updated%3A2021-10-19..2021-11-16&type=Issues) | [@dleen](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adleen+updated%3A2021-10-19..2021-11-16&type=Issues) | [@dolfinus](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adolfinus+updated%3A2021-10-19..2021-11-16&type=Issues) | [@jackexu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajackexu+updated%3A2021-10-19..2021-11-16&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-10-19..2021-11-16&type=Issues) | [@maliubiao](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amaliubiao+updated%3A2021-10-19..2021-11-16&type=Issues) | `@nsait-linaro` | [@takluyver](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atakluyver+updated%3A2021-10-19..2021-11-16&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2021-10-19..2021-11-16&type=Issues)
## 6.4.5
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.4...ccd9665571107e02a325a738b8baebd6532b2d3d))
### Bug fixes
- Recover from failure to render mimetype [#6181](https://github.com/jupyter/notebook/pull/6181) ([@martinRenou](https://github.com/martinRenou))
### Maintenance and upkeep improvements
- Fix crypto handling [#6197](https://github.com/jupyter/notebook/pull/6197) ([@blink1073](https://github.com/blink1073))
- Fix `jupyter_client` warning [#6178](https://github.com/jupyter/notebook/pull/6178) ([@martinRenou](https://github.com/martinRenou))
### Documentation improvements
- Fix nbsphinx settings [#6200](https://github.com/jupyter/notebook/pull/6200) ([@mgeier](https://github.com/mgeier))
- Fully revert the pinning of `nbsphinx` to 0.8.6 [#6201](https://github.com/jupyter/notebook/pull/6201) ([@kevin-bates](https://github.com/kevin-bates))
- Pin `nbsphinx` to 0.8.6, clean up orphaned resources [#6194](https://github.com/jupyter/notebook/pull/6194) ([@kevin-bates](https://github.com/kevin-bates))
- Fix typo in docstring [#6188](https://github.com/jupyter/notebook/pull/6188) ([@jgarte](https://github.com/jgarte))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-09-03&to=2021-10-19&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2021-09-03..2021-10-19&type=Issues) | [@jgarte](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajgarte+updated%3A2021-09-03..2021-10-19&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-09-03..2021-10-19&type=Issues) | [@martinRenou](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AmartinRenou+updated%3A2021-09-03..2021-10-19&type=Issues) | [@mgeier](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amgeier+updated%3A2021-09-03..2021-10-19&type=Issues)
## 6.4.4
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.3...c06c340574e1d2207940c5bd1190eb73d82ab945))
### Documentation improvements
- Update Manual Release Instructions [#6152](https://github.com/jupyter/notebook/pull/6152) ([@blink1073](https://github.com/blink1073))
### Other merged PRs
- Use default JupyterLab CSS sanitizer options for Markdown [#6160](https://github.com/jupyter/notebook/pull/6160) ([@krassowski](https://github.com/krassowski))
- Fix syntax highlight [#6128](https://github.com/jupyter/notebook/pull/6128) ([@massongit](https://github.com/massongit))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-08-11&to=2021-09-03&type=c))
[@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2021-08-11..2021-09-03&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-08-11..2021-09-03&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akrassowski+updated%3A2021-08-11..2021-09-03&type=Issues) | [@massongit](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amassongit+updated%3A2021-08-11..2021-09-03&type=Issues) | [@minrk](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aminrk+updated%3A2021-08-11..2021-09-03&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2021-08-11..2021-09-03&type=Issues)
## 6.4.3
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.2...c373bd89adaaddffbb71747ebbcfe8a749cae0a8))
### Bugs fixed
- Add @babel/core dependency [#6133](https://github.com/jupyter/notebook/pull/6133) ([@afshin](https://github.com/afshin))
- Switch webpack to production mode [#6131](https://github.com/jupyter/notebook/pull/6131) ([@afshin](https://github.com/afshin))
### Maintenance and upkeep improvements
- Clean up link checking [#6130](https://github.com/jupyter/notebook/pull/6130) ([@blink1073](https://github.com/blink1073))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-08-06&to=2021-08-10&type=c))
[@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2021-08-06..2021-08-10&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2021-08-06..2021-08-10&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2021-08-06..2021-08-10&type=Issues)
## 6.4.2
([Full Changelog](https://github.com/jupyter/notebook/compare/v6.4.0...999e8322bcd24e0ed62b180c19ec13db3f48165b))
### Bugs fixed
- Add missing file to manifest [#6122](https://github.com/jupyter/notebook/pull/6122) ([@afshin](https://github.com/afshin))
- Fix issue #3218 [#6108](https://github.com/jupyter/notebook/pull/6108) ([@Nazeeh21](https://github.com/Nazeeh21))
- Fix version of jupyter-packaging in pyproject.toml [#6101](https://github.com/jupyter/notebook/pull/6101) ([@frenzymadness](https://github.com/frenzymadness))
- "#element".tooltip is not a function on home page fixed. [#6070](https://github.com/jupyter/notebook/pull/6070) @ilayh123
### Maintenance and upkeep improvements
- Enhancements to the desktop entry [#6099](https://github.com/jupyter/notebook/pull/6099) ([@Amr-Ibra](https://github.com/Amr-Ibra))
- Add missing spaces to help messages in config file [#6085](https://github.com/jupyter/notebook/pull/6085) ([@saiwing-yeung](https://github.com/saiwing-yeung))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-05-17&to=2021-08-06&type=c))
[@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2021-05-17..2021-08-06&type=Issues) | [@Amr-Ibra](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AAmr-Ibra+updated%3A2021-05-17..2021-08-06&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2021-05-17..2021-08-06&type=Issues) | [@ilayh123](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ailayh123+updated%3A2021-05-17..2021-08-06&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-05-17..2021-08-06&type=Issues) | [@Nazeeh21](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ANazeeh21+updated%3A2021-05-17..2021-08-06&type=Issues) | [@saiwing-yeung](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Asaiwing-yeung+updated%3A2021-05-17..2021-08-06&type=Issues)
## 6.4.0
([Full Changelog](https://github.com/jupyter/notebook/compare/6.3.0...80eb286f316838afc76a9a84b06f54e7dccb6c86))
### Bugs fixed
- Fix Handling of Encoded Paths in Save As Dialog [#6030](https://github.com/jupyter/notebook/pull/6030) ([@afshin](https://github.com/afshin))
- Fix: split_cell doesn't always split cell [#6017](https://github.com/jupyter/notebook/pull/6017) ([@gamestrRUS](https://github.com/gamestrRUS))
- Correct 'Content-Type' headers [#6026](https://github.com/jupyter/notebook/pull/6026) ([@faucct](https://github.com/faucct))
- Fix skipped tests & remove deprecation warnings [#6018](https://github.com/jupyter/notebook/pull/6018) ([@befeleme](https://github.com/befeleme))
- \[Gateway\] Track only this server's kernels [#5980](https://github.com/jupyter/notebook/pull/5980) ([@kevin-bates](https://github.com/kevin-bates))
- Bind the HTTPServer in start [#6061](https://github.com/jupyter/notebook/pull/6061)
### Maintenance and upkeep improvements
- Revert "do not apply asyncio patch for tornado >=6.1" [#6052](https://github.com/jupyter/notebook/pull/6052) ([@minrk](https://github.com/minrk))
- Use Jupyter Releaser [#6048](https://github.com/jupyter/notebook/pull/6048) ([@afshin](https://github.com/afshin))
- Add Workflow Permissions for Lock Bot [#6042](https://github.com/jupyter/notebook/pull/6042) ([@jtpio](https://github.com/jtpio))
- Fixes related to the recent changes in the documentation [#6021](https://github.com/jupyter/notebook/pull/6021) ([@frenzymadness](https://github.com/frenzymadness))
- Add maths checks in CSS reference test [#6035](https://github.com/jupyter/notebook/pull/6035) ([@stef4k](https://github.com/stef4k))
- Add Issue Lock and Answered Bots [#6019](https://github.com/jupyter/notebook/pull/6019) ([@afshin](https://github.com/afshin))
### Documentation improvements
- Spelling correction [#6045](https://github.com/jupyter/notebook/pull/6045) ([@wggillen](https://github.com/wggillen))
- Minor typographical and comment changes [#6025](https://github.com/jupyter/notebook/pull/6025) ([@misterhay](https://github.com/misterhay))
- Fixes related to the recent changes in the documentation [#6021](https://github.com/jupyter/notebook/pull/6021) ([@frenzymadness](https://github.com/frenzymadness))
- Fix readthedocs environment [#6020](https://github.com/jupyter/notebook/pull/6020) ([@blink1073](https://github.com/blink1073))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-03-22&to=2021-05-12&type=c))
[@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2021-03-22..2021-05-12&type=Issues) | [@befeleme](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abefeleme+updated%3A2021-03-22..2021-05-12&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2021-03-22..2021-05-12&type=Issues) | [@faucct](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afaucct+updated%3A2021-03-22..2021-05-12&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2021-03-22..2021-05-12&type=Issues) | [@gamestrRUS](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AgamestrRUS+updated%3A2021-03-22..2021-05-12&type=Issues) | [@jtpio](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajtpio+updated%3A2021-03-22..2021-05-12&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-03-22..2021-05-12&type=Issues) | [@minrk](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aminrk+updated%3A2021-03-22..2021-05-12&type=Issues) | [@misterhay](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amisterhay+updated%3A2021-03-22..2021-05-12&type=Issues) | [@stef4k](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Astef4k+updated%3A2021-03-22..2021-05-12&type=Issues) | [@wggillen](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Awggillen+updated%3A2021-03-22..2021-05-12&type=Issues)
## 6.3.0
### Merged PRs
- Add square logo and desktop entry files [#6010](https://github.com/jupyter/notebook/pull/6010) ([@befeleme](https://github.com/befeleme))
- Modernize Changelog [#6008](https://github.com/jupyter/notebook/pull/6008) ([@afshin](https://github.com/afshin))
- Add missing "import inspect" [#5999](https://github.com/jupyter/notebook/pull/5999) ([@mgeier](https://github.com/mgeier))
- Add Codecov badge to README [#5989](https://github.com/jupyter/notebook/pull/5989) ([@thomasrockhu](https://github.com/thomasrockhu))
- Remove configuration for nosetests from setup.cfg [#5986](https://github.com/jupyter/notebook/pull/5986) ([@frenzymadness](https://github.com/frenzymadness))
- Update security.rst [#5978](https://github.com/jupyter/notebook/pull/5978) ([@dlrice](https://github.com/dlrice))
- Docs-Translations: Updated Hindi and Chinese Readme.md [#5976](https://github.com/jupyter/notebook/pull/5976) ([@rjn01](https://github.com/rjn01))
- Allow /metrics by default if auth is off [#5974](https://github.com/jupyter/notebook/pull/5974) ([@blairdrummond](https://github.com/blairdrummond))
- Skip terminal tests on Windows 3.9+ (temporary) [#5968](https://github.com/jupyter/notebook/pull/5968) ([@kevin-bates](https://github.com/kevin-bates))
- Update GatewayKernelManager to derive from AsyncMappingKernelManager [#5966](https://github.com/jupyter/notebook/pull/5966) ([@kevin-bates](https://github.com/kevin-bates))
- Drop use of deprecated pyzmq.ioloop [#5965](https://github.com/jupyter/notebook/pull/5965) ([@kevin-bates](https://github.com/kevin-bates))
- Drop support for Python 3.5 [#5962](https://github.com/jupyter/notebook/pull/5962) ([@kevin-bates](https://github.com/kevin-bates))
- Allow jupyter_server-based contents managers in notebook [#5957](https://github.com/jupyter/notebook/pull/5957) ([@afshin](https://github.com/afshin))
- Russian translation fixes [#5954](https://github.com/jupyter/notebook/pull/5954) ([@insolor](https://github.com/insolor))
- Increase culling test idle timeout [#5952](https://github.com/jupyter/notebook/pull/5952) ([@kevin-bates](https://github.com/kevin-bates))
- Re-enable support for answer_yes flag [#5941](https://github.com/jupyter/notebook/pull/5941) ([@afshin](https://github.com/afshin))
- Replace Travis and Appveyor with Github Actions [#5938](https://github.com/jupyter/notebook/pull/5938) ([@kevin-bates](https://github.com/kevin-bates))
- DOC: Server extension, extra docs on configuration/authentication. [#5937](https://github.com/jupyter/notebook/pull/5937) ([@Carreau](https://github.com/Carreau))
### Contributors to this release
([GitHub contributors page for this release](https://github.com/jupyter/notebook/graphs/contributors?from=2021-01-13&to=2021-03-18&type=c))
[@abielhammonds](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aabielhammonds+updated%3A2021-01-13..2021-03-18&type=Issues) | [@afshin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aafshin+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ajharry](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aajharry+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Alokrar](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AAlokrar+updated%3A2021-01-13..2021-03-18&type=Issues) | [@befeleme](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abefeleme+updated%3A2021-01-13..2021-03-18&type=Issues) | [@blairdrummond](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablairdrummond+updated%3A2021-01-13..2021-03-18&type=Issues) | [@blink1073](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ablink1073+updated%3A2021-01-13..2021-03-18&type=Issues) | [@bollwyvl](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Abollwyvl+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Carreau](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ACarreau+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ChenChenDS](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AChenChenDS+updated%3A2021-01-13..2021-03-18&type=Issues) | [@cosmoscalibur](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Acosmoscalibur+updated%3A2021-01-13..2021-03-18&type=Issues) | [@dlrice](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adlrice+updated%3A2021-01-13..2021-03-18&type=Issues) | [@dwanneruchi](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Adwanneruchi+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ElisonSherton](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AElisonSherton+updated%3A2021-01-13..2021-03-18&type=Issues) | [@FazeelUsmani](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AFazeelUsmani+updated%3A2021-01-13..2021-03-18&type=Issues) | [@frenzymadness](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Afrenzymadness+updated%3A2021-01-13..2021-03-18&type=Issues) | [@goerz](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Agoerz+updated%3A2021-01-13..2021-03-18&type=Issues) | [@insolor](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ainsolor+updated%3A2021-01-13..2021-03-18&type=Issues) | [@jasongrout](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ajasongrout+updated%3A2021-01-13..2021-03-18&type=Issues) | [@JianghuiDu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJianghuiDu+updated%3A2021-01-13..2021-03-18&type=Issues) | [@JuzerShakir](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AJuzerShakir+updated%3A2021-01-13..2021-03-18&type=Issues) | [@kevin-bates](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Akevin-bates+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Khalilsqu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AKhalilsqu+updated%3A2021-01-13..2021-03-18&type=Issues) | [@meeseeksdev](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ameeseeksdev+updated%3A2021-01-13..2021-03-18&type=Issues) | [@mgeier](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amgeier+updated%3A2021-01-13..2021-03-18&type=Issues) | [@michaelpedota](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amichaelpedota+updated%3A2021-01-13..2021-03-18&type=Issues) | [@mjbright](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Amjbright+updated%3A2021-01-13..2021-03-18&type=Issues) | [@MSeal](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AMSeal+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ncoughlin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ancoughlin+updated%3A2021-01-13..2021-03-18&type=Issues) | [@NTimmons](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3ANTimmons+updated%3A2021-01-13..2021-03-18&type=Issues) | [@ProsperousHeart](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AProsperousHeart+updated%3A2021-01-13..2021-03-18&type=Issues) | [@rjn01](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Arjn01+updated%3A2021-01-13..2021-03-18&type=Issues) | [@slw07g](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Aslw07g+updated%3A2021-01-13..2021-03-18&type=Issues) | [@stenivan](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Astenivan+updated%3A2021-01-13..2021-03-18&type=Issues) | [@takluyver](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Atakluyver+updated%3A2021-01-13..2021-03-18&type=Issues) | [@thomasrockhu](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Athomasrockhu+updated%3A2021-01-13..2021-03-18&type=Issues) | [@wgilpin](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Awgilpin+updated%3A2021-01-13..2021-03-18&type=Issues) | [@wxtt522](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Awxtt522+updated%3A2021-01-13..2021-03-18&type=Issues) | [@yuvipanda](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3Ayuvipanda+updated%3A2021-01-13..2021-03-18&type=Issues) | [@Zsailer](https://github.com/search?q=repo%3Ajupyter%2Fnotebook+involves%3AZsailer+updated%3A2021-01-13..2021-03-18&type=Issues)
## 6.2.0
## Merged PRs
- Increase minimum tornado version ([5933](https://github.com/jupyter/notebook/pull/5933))
- Adjust skip decorators to avoid remaining dependency on nose ([5932](https://github.com/jupyter/notebook/pull/5932))
- Ensure that cell ids persist after save ([5928](https://github.com/jupyter/notebook/pull/5928))
- Add reconnection to Gateway (form nb2kg) ([5924](https://github.com/jupyter/notebook/pull/5924))
- Fix some typos ([5917](https://github.com/jupyter/notebook/pull/5917))
- Handle TrashPermissionError, now that it exist ([5894](https://github.com/jupyter/notebook/pull/5894))
Thank you to all the contributors:
- @kevin-bates
- @mishaschwartz
- @oyvsyo
- @user202729
- @stefanor
## 6.1.6
## Merged PRs
- do not require nose for testing ([5826](https://github.com/jupyter/notebook/pull/5826))
- \[docs\] Update Chinese and Hindi readme.md ([5823](https://github.com/jupyter/notebook/pull/5823))
- Add support for creating terminals via GET ([5813](https://github.com/jupyter/notebook/pull/5813))
- Made doc translations in Hindi and Chinese ([5787](https://github.com/jupyter/notebook/pull/5787))
Thank you to all the contributors:
- @pgajdos
- @rjn01
- @kevin-bates
- @virejdasani
## 6.1.5
6.1.5 is a security release, fixing one vulnerability:
- Fix open redirect vulnerability GHSA-c7vm-f5p4-8fqh (CVE to be assigned)
## 6.1.4
- Fix broken links to jupyter documentation ([5686](https://github.com/jupyter/notebook/pull/5686))
- Add additional entries to troubleshooting section ([5695](https://github.com/jupyter/notebook/pull/5695))
- Revert change in page alignment ([5703](https://github.com/jupyter/notebook/pull/5703))
- Bug fix: remove double encoding in download files ([5720](https://github.com/jupyter/notebook/pull/5720))
- Fix typo for Check in zh_CN ([5730](https://github.com/jupyter/notebook/pull/5730))
- Require a file name in the "Save As" dialog ([5733](https://github.com/jupyter/notebook/pull/5733))
Thank you to all the contributors:
- bdbai
- Jaipreet Singh
- Kevin Bates
- Pavel Panchekha
- Zach Sailer
## 6.1.3
- Title new buttons with label if action undefined ([5676](https://github.com/jupyter/notebook/pull/5676))
Thank you to all the contributors:
- Kyle Kelley
## 6.1.2
- Fix russian message format for delete/duplicate actions ([5662](https://github.com/jupyter/notebook/pull/5662))
- Remove unnecessary import of bind_unix_socket ([5666](https://github.com/jupyter/notebook/pull/5666))
- Tooltip style scope fix ([5672](https://github.com/jupyter/notebook/pull/5672))
Thank you to all the contributors:
- Dmitry Akatov
- Kevin Bates
- Magda Stenius
## 6.1.1
- Prevent inclusion of requests_unixsocket on Windows ([5650](https://github.com/jupyter/notebook/pull/5650))
Thank you to all the contributors:
- Kevin Bates
## 6.1.0
Please note that this repository is currently maintained by a skeleton
crew of maintainers from the Jupyter community. For our approach moving
forward, please see this
[notice](https://github.com/jupyter/notebook#notice) from the README.
Thank you.
Here is an enumeration of changes made since the last release and
included in 6.1.0.
- Remove deprecated encoding parameter for Python 3.9 compatibility. ([5174](https://github.com/jupyter/notebook/pull/5174))
- Add support for async kernel management ([4479](https://github.com/jupyter/notebook/pull/4479))
- Fix typo in password_required help message ([5320](https://github.com/jupyter/notebook/pull/5320))
- Gateway only: Ensure launch and request timeouts are in sync ([5317](https://github.com/jupyter/notebook/pull/5317))
- Update Markdown Cells example to HTML5 video tag ([5411](https://github.com/jupyter/notebook/pull/5411))
- Integrated LoginWidget into edit to enable users to logout from the t... ([5406](https://github.com/jupyter/notebook/pull/5406))
- Update message about minimum Tornado version ([5222](https://github.com/jupyter/notebook/pull/5222))
- Logged notebook type ([5425](https://github.com/jupyter/notebook/pull/5425))
- Added nl language ([5354](https://github.com/jupyter/notebook/pull/5354))
- Add UNIX socket support to notebook server. ([4835](https://github.com/jupyter/notebook/pull/4835))
- Update CodeMirror dependency ([5198](https://github.com/jupyter/notebook/pull/5198))
- Tree added download multiple files ([5351](https://github.com/jupyter/notebook/pull/5351))
- Toolbar buttons tooltip: show help instead of label ([5107](https://github.com/jupyter/notebook/pull/5107))
- Remove unnecessary import of requests_unixsocket ([5451](https://github.com/jupyter/notebook/pull/5451))
- Add ability to cull terminals and track last activity ([5372](https://github.com/jupyter/notebook/pull/5372))
- Code refactoring notebook.js ([5352](https://github.com/jupyter/notebook/pull/5352))
- Install terminado for docs build ([5462](https://github.com/jupyter/notebook/pull/5462))
- Convert notifications JS test to selenium ([5455](https://github.com/jupyter/notebook/pull/5455))
- Add cell attachments to markdown example ([5412](https://github.com/jupyter/notebook/pull/5412))
- Add Japanese document ([5231](https://github.com/jupyter/notebook/pull/5231))
- Migrate Move multiselection test to selenium ([5158](https://github.com/jupyter/notebook/pull/5158))
- Use `cmdtrl-enter` to run a cell ([5120](https://github.com/jupyter/notebook/pull/5120))
- Fix broken "Raw cell MIME type" dialog ([5385](https://github.com/jupyter/notebook/pull/5385))
- Make a notebook writable after successful save-as ([5296](https://github.com/jupyter/notebook/pull/5296))
- Add actual watch script ([4738](https://github.com/jupyter/notebook/pull/4738))
- Added `--autoreload` flag to `NotebookApp` ([4795](https://github.com/jupyter/notebook/pull/4795))
- Enable check_origin on gateway websocket communication ([5471](https://github.com/jupyter/notebook/pull/5471))
- Restore detection of missing terminado package ([5465](https://github.com/jupyter/notebook/pull/5465))
- Culling: ensure `last_activity` attr exists before use ([5355](https://github.com/jupyter/notebook/pull/5355))
- Added functionality to allow filter kernels by Jupyter Enterprise Gat... ([5484](https://github.com/jupyter/notebook/pull/5484))
- 'Play' icon for run-cell toolbar button ([2922](https://github.com/jupyter/notebook/pull/2922))
- Bump minimum version of jQuery to 3.5.0 ([5491](https://github.com/jupyter/notebook/pull/5491))
- Remove old JS markdown tests, add a new one in selenium ([5497](https://github.com/jupyter/notebook/pull/5497))
- Add support for more RTL languages ([5036](https://github.com/jupyter/notebook/pull/5036))
- Make markdown cells stay RTL in edit mode ([5037](https://github.com/jupyter/notebook/pull/5037))
- Unforce RTL output display ([5039](https://github.com/jupyter/notebook/pull/5039))
- Fixed multicursor backspacing ([4880](https://github.com/jupyter/notebook/pull/4880))
- Implemented Split Cell for multicursor ([4824](https://github.com/jupyter/notebook/pull/4824))
- Alignment issue \[FIXED\] ([3173](https://github.com/jupyter/notebook/pull/3173))
- MathJax: Support for `\gdef` ([4407](https://github.com/jupyter/notebook/pull/4407))
- Another (Minor) Duplicate Code Reduction ([5316](https://github.com/jupyter/notebook/pull/5316))
- Update readme regarding maintenance ([5500](https://github.com/jupyter/notebook/pull/5500))
- Document contents chunks ([5508](https://github.com/jupyter/notebook/pull/5508))
- Backspace deletes empty line ([5516](https://github.com/jupyter/notebook/pull/5516))
- The dropdown submenu at notebook page is not keyboard accessible ([4732](https://github.com/jupyter/notebook/pull/4732))
- Tooltips visible through keyboard navigation for specified buttons ([4729](https://github.com/jupyter/notebook/pull/4729))
- Fix for recursive symlink ([4670](https://github.com/jupyter/notebook/pull/4670))
- Fix for the terminal shutdown issue ([4180](https://github.com/jupyter/notebook/pull/4180))
- Add japanese translation files ([4490](https://github.com/jupyter/notebook/pull/4490))
- Workaround for socket permission errors on Cygwin ([4584](https://github.com/jupyter/notebook/pull/4584))
- Implement optional markdown header and footer files ([4043](https://github.com/jupyter/notebook/pull/4043))
- Remove double link when using `custom_display_url` ([5544](https://github.com/jupyter/notebook/pull/5544))
- Respect `cell.is_editable` during find-and-replace ([5545](https://github.com/jupyter/notebook/pull/5545))
- Fix exception causes all over the codebase ([5556](https://github.com/jupyter/notebook/pull/5556)
- Improve login shell heuristics ([5588](https://github.com/jupyter/notebook/pull/5588))
- Added support for `JUPYTER_TOKEN_FILE` ([5587](https://github.com/jupyter/notebook/pull/5587))
- Kill notebook itself when server cull idle kernel ([5593](https://github.com/jupyter/notebook/pull/5593))
- Implement password hashing with bcrypt ([3793](https://github.com/jupyter/notebook/pull/3793))
- Fix broken links ([5600](https://github.com/jupyter/notebook/pull/5600))
- Russian internationalization support ([5571](https://github.com/jupyter/notebook/pull/5571))
- Add a metadata tag to override notebook direction (ltr/rtl) ([5052](https://github.com/jupyter/notebook/pull/5052))
- Paste two images from clipboard in markdown cell ([5598](https://github.com/jupyter/notebook/pull/5598))
- Add keyboard shortcuts to menu dropdowns ([5525](https://github.com/jupyter/notebook/pull/5525))
- Update codemirror to `5.56.0+components1` ([5637](https://github.com/jupyter/notebook/pull/5637))
Thank you to all the contributors:
- Aaron Myatt
- Adam Blake
- Afshin Taylor Darian
- Aman Bansal
- Ben Thayer
- berendjan
- Bruno P. Kinoshita
- bzinberg
- Christophe Cadilhac
- Daiki Katsuragawa
- David Lukes
- Dmitriy Q
- dmpe
- dylanzjy
- dSchurch
- E. M. Bray
- ErwinRussel
- Felix Mönckemeyer
- Grant Nestor
- Jarrad Whitaker
- Jesus Panales Castillo
- Joshua Zeltser
- Karthikeyan Singaravelan
- Kenichi Ito
- Kevin Bates
- Koki Nishihara
- Kris Wilson
- Kyle Kelley
- Laura Merlo
- levinxo
- Luciano Resende
- Luis Cabezon Manchado
- Madhusudhan Srinivasa
- Matthias Geier
- mattn
- Max Klein
- Min RK
- Mingxuan Lin
- Mohammad Mostafa Farzan
- Niko Felger
- Norah Abanumay
- Onno Broekmans
- PierreMB
- pinarkavak
- Ram Rachum
- Reece Hart
- Remi Rampin
- Rohit Sanjay
- Shane Canon
- Simon Li
- Steinar Sturlaugsson
- Steven Silvester
- taohan16
- Thew Dhanat
- Thomas Kluyver
- Toon Baeyens
- Vidar Tonaas Fauske
- Zachary Sailer
## 6.0.3
- Dependency updates to fix startup issues on Windows platform
- Add support for nbconvert 6.x
- Creation of recent tab
Thanks for all the contributors:
- Luciano Resende
- Kevin Bates
- ahangsleben
- Zachary Sailer
- Pallavi Bharadwaj
- Thomas Kluyver
- Min RK
- forest0
- Bibo Hao
- Michal Charemza
- Sergey Shevelev
- Shuichiro MAKIGAKI
- krinsman
- TPartida
- Landen McDonald
- Tres DuBiel
## 6.0.2
- Update JQuery dependency to version 3.4.1 to fix security vulnerability (CVE-2019-11358)
- Update CodeMirror to version 5.48.4 to fix Python formatting issues
- Continue removing obsolete Python 2.x code/dependencies
- Multiple documentation updates
Thanks for all the contributors:
- David Robles
- Jason Grout
- Kerwin Sun
- Kevin Bates
- Kyle Kelley
- Luciano Resende
- Marcus D Sherman
- Sasaki Takeru
- Tom Jarosz
- Vidar Tonaas Fauske
- Wes Turner
- Zachary Sailer
## 6.0.1
- Attempt to re-establish websocket connection to Gateway ([4777](https://github.com/jupyter/notebook/pull/4777))
- Add missing react-dom js to package data ([4772](https://github.com/jupyter/notebook/pull/4772))
Thanks for all the contributors:
- Eunsoo Park
- Min RK
## 6.0
This is the first major release of the Jupyter Notebook since version
5.0 (March 2017).
We encourage users to start trying JupyterLab, which has just announced
it's 1.0 release in preparation for a future transition.
- Remove Python 2.x support in favor of Python 3.5 and higher.
- Multiple accessibility enhancements and bug-fixes.
- Multiple translation enhancements and bug-fixes.
- Remove deprecated ANSI CSS styles.
- Native support to forward requests to Jupyter Gateway(s) (Embedded
NB2KG).
- Use JavaScript to redirect users to notebook homepage.
- Enhanced SSL/TLS security by using PROTOCOL_TLS which selects the
highest ssl/tls protocol version available that both the client and
server support. When PROTOCOL_TLS is not available use
PROTOCOL_SSLv23.
- Add `?no_track_activity=1` argument to allow API requests. to not be
registered as activity (e.g. API calls by external activity
monitors).
- Kernels shutting down due to an idle timeout is no longer considered
an activity-updating event.
- Further improve compatibility with tornado 6 with improved checks
for when websockets are closed.
- Launch the browser with a local file which redirects to the server
address including the authentication token. This prevents another
logged-in user from stealing the token from command line arguments
and authenticating to the server. The single-use token previously
used to mitigate this has been removed. Thanks to Dr. Owain Kenway
for suggesting the local file approach.
- Respect nbconvert entrypoints as sources for exporters
- Update to CodeMirror to 5.37, which includes f-string syntax for
Python 3.6.
- Update jquery-ui to 1.12
- Execute cells by clicking icon in input prompt.
- New "Save as" menu option.
- When serving on a loopback interface, protect against DNS rebinding
by checking the `Host` header from the browser. This check can be
disabled if necessary by setting `NotebookApp.allow_remote_access`. (Disabled by default while we work out some Mac issues in
[3754](https://github.com/jupyter/notebook/issues/3754)).
- Add kernel_info_timeout traitlet to enable restarting slow kernels.
- Add `custom_display_host` config option to override displayed URL.
- Add /metrics endpoint for Prometheus Metrics.
- Optimize large file uploads.
- Allow access control headers to be overridden in
jupyter_notebook_config.py to support greater CORS and proxy
configuration flexibility.
- Add support for terminals on windows.
- Add a "restart and run all" button to the toolbar.
- Frontend/extension-config: allow default json files in a .d
directory.
- Allow setting token via jupyter_token env.
- Cull idle kernels using `--MappingKernelManager.cull_idle_timeout`.
- Allow read-only notebooks to be trusted.
- Convert JS tests to Selenium.
Security Fixes included in previous minor releases of Jupyter Notebook
and also included in version 6.0.
- Fix Open Redirect vulnerability (CVE-2019-10255) where certain
malicious URLs could redirect from the Jupyter login page to a
malicious site after a successful login.
- Contains a security fix for a cross-site inclusion (XSSI)
vulnerability (CVE-2019--9644), where files at a known URL could be
included in a page from an unauthorized website if the user is
logged into a Jupyter server. The fix involves setting the
`X-Content-Type-Options: nosniff` header, and applying CSRF checks
previously on all non-GET API requests to GET requests to API
endpoints and the /files/ endpoint.
- Check Host header to more securely protect localhost deployments
from DNS rebinding. This is a pre-emptive measure, not fixing a
known vulnerability. Use `.NotebookApp.allow_remote_access` and
`.NotebookApp.local_hostnames` to configure access.
- Upgrade bootstrap to 3.4, fixing an XSS vulnerability, which has
been assigned
[CVE-2018-14041](https://nvd.nist.gov/vuln/detail/CVE-2018-14041).
- Contains a security fix preventing malicious directory names from
being able to execute javascript.
- Contains a security fix preventing nbconvert endpoints from
executing javascript with access to the server API. CVE request
pending.
Thanks for all the contributors:
- AAYUSH SINHA
- Aaron Hall, MBA
- Abhinav Sagar
- Adam Rule
- Adeel Ahmad
- Alex Rothberg
- Amy Skerry-Ryan
- Anastasis Germanidis
- Andrés Sánchez
- Arjun Radhakrishna
- Arovit Narula
- Benda Xu
- Björn Grüning
- Brian E. Granger
- Carol Willing
- Celina Kilcrease
- Chris Holdgraf
- Chris Miller
- Ciaran Langton
- Damian Avila
- Dana Lee
- Daniel Farrell
- Daniel Nicolai
- Darío Hereñú
- Dave Aitken
- Dave Foster
- Dave Hirschfeld
- Denis Ledoux
- Dmitry Mikushin
- Dominic Kuang
- Douglas Hanley
- Elliott Sales de Andrade
- Emilio Talamante Lugo
- Eric Perry
- Ethan T. Hendrix
- Evan Van Dam
- Francesco Franchina
- Frédéric Chapoton
- Félix-Antoine Fortin
- Gabriel
- Gabriel Nützi
- Gabriel Ruiz
- Gestalt LUR
- Grant Nestor
- Gustavo Efeiche
- Harsh Vardhan
- Heng GAO
- Hisham Elsheshtawy
- Hong Xu
- Ian Rose
- Ivan Ogasawara
- J Forde
- Jason Grout
- Jessica B. Hamrick
- Jiaqi Liu
- John Emmons
- Josh Barnes
- Karthik Balakrishnan
- Kevin Bates
- Kirit Thadaka
- Kristian Gregorius Hustad
- Kyle Kelley
- Leo Gallucci
- Lilian Besson
- Lucas Seiki Oshiro
- Luciano Resende
- Luis Angel Rodriguez Guerrero
- M Pacer
- Maarten Breddels
- Mac Knight
- Madicken Munk
- Maitiú Ó Ciaráin
- Marc Udoff
- Mathis HAMMEL
- Mathis Rosenhauer
- Matthias Bussonnier
- Matthias Geier
- Max Vovshin
- Maxime Mouchet
- Michael Chirico
- Michael Droettboom
- Michael Heilman
- Michael Scott Cuthbert
- Michal Charemza
- Mike Boyle
- Milos Miljkovic
- Min RK
- Miro Hrončok
- Nicholas Bollweg
- Nitesh Sawant
- Ondrej Jariabka
- Park Hae Jin
- Paul Ivanov
- Paul Masson
- Peter Parente
- Pierre Tholoniat
- Remco Verhoef
- Roland Weber
- Roman Kornev
- Rosa Swaby
- Roy Hyunjin Han
- Sally
- Sam Lau
- Samar Sultan
- Shiti Saxena
- Simon Biggs
- Spencer Park
- Stephen Ward
- Steve (Gadget) Barnes
- Steven Silvester
- Surya Prakash Susarla
- Syed Shah
- Sylvain Corlay
- Thomas Aarholt
- Thomas Kluyver
- Tim
- Tim Head
- Tim Klever
- Tim Metzler
- Todd
- Tom Jorquera
- Tyler Makaro
- Vaibhav Sagar
- Victor
- Vidar Tonaas Fauske
- Vu Minh Tam
- Vít Tuček
- Will Costello
- Will Starms
- William Hosford
- Xiaohan Li
- Yuvi Panda
- ashley teoh
- nullptr
## 5.7.8
- Fix regression in restarting kernels in 5.7.5. The restart handler
would return before restart was completed.
- Further improve compatibility with tornado 6 with improved checks
for when websockets are closed.
- Fix regression in 5.7.6 on Windows where .js files could have the
wrong mime-type.
- Fix Open Redirect vulnerability (CVE-2019-10255) where certain
malicious URLs could redirect from the Jupyter login page to a
malicious site after a successful login. 5.7.7 contained only a
partial fix for this issue.
## 5.7.6
5.7.6 contains a security fix for a cross-site inclusion (XSSI)
vulnerability (CVE-2019--9644), where files at a known URL could be
included in a page from an unauthorized website if the user is logged
into a Jupyter server. The fix involves setting the
`X-Content-Type-Options: nosniff` header, and applying CSRF checks
previously on all non-GET API requests to GET requests to API endpoints
and the /files/ endpoint.
The attacking page is able to access some contents of files when using
Internet Explorer through script errors, but this has not been
demonstrated with other browsers.
## 5.7.5
- Fix compatibility with tornado 6 ([4392](https://github.com/jupyter/notebook/pull/4392), [4449](https://github.com/jupyter/notebook/pull/4449)).
- Fix opening integer filedescriptor during startup on Python 2 ([4349](https://github.com/jupyter/notebook/pull/4349))
- Fix compatibility with asynchronous
\[KernelManager.restart_kernel\]{.title-ref} methods ([4412](https://github.com/jupyter/notebook/pull/4412))
## 5.7.4
5.7.4 fixes a bug introduced in 5.7.3, in which the
`list_running_servers()` function attempts to parse HTML files as JSON,
and consequently crashes ([4284](https://github.com/jupyter/notebook/pull/4284)).
## 5.7.3
5.7.3 contains one security improvement and one security fix:
- Launch the browser with a local file which redirects to the server
address including the authentication token ([4260](https://github.com/jupyter/notebook/pull/4260)). This prevents another logged-in user from stealing
the token from command line arguments and authenticating to the
server. The single-use token previously used to mitigate this has
been removed. Thanks to Dr. Owain Kenway for suggesting the local
file approach.
- Upgrade bootstrap to 3.4, fixing an XSS vulnerability, which has
been assigned
[CVE-2018-14041](https://nvd.nist.gov/vuln/detail/CVE-2018-14041) ([4271](https://github.com/jupyter/notebook/pull/4271)).
## 5.7.2
5.7.2 contains a security fix preventing malicious directory names from
being able to execute javascript. CVE request pending.
## 5.7.1
5.7.1 contains a security fix preventing nbconvert endpoints from
executing javascript with access to the server API. CVE request pending.
## 5.7.0
New features:
- Update to CodeMirror to 5.37, which includes f-string syntax for
Python 3.6 ([3816](https://github.com/jupyter/notebook/pull/3816))
- Update jquery-ui to 1.12 ([3836](https://github.com/jupyter/notebook/pull/3836))
- Check Host header to more securely protect localhost deployments
from DNS rebinding. This is a pre-emptive measure, not fixing a
known vulnerability ([3766](https://github.com/jupyter/notebook/pull/3766)). Use
`.NotebookApp.allow_remote_access` and
`.NotebookApp.local_hostnames` to configure access.
- Allow access-control-allow-headers to be overridden ([3886](https://github.com/jupyter/notebook/pull/3886))
- Allow configuring max_body_size and max_buffer_size ([3829](https://github.com/jupyter/notebook/pull/3829))
- Allow configuring get_secure_cookie keyword-args ([3778](https://github.com/jupyter/notebook/pull/3778))
- Respect nbconvert entrypoints as sources for exporters ([3879](https://github.com/jupyter/notebook/pull/3879))
- Include translation sources in source distributions ([3925](https://github.com/jupyter/notebook/pull/3925), [3931](https://github.com/jupyter/notebook/pull/3931))
- Various improvements to documentation ([3799](https://github.com/jupyter/notebook/pull/3799), [3800](https://github.com/jupyter/notebook/pull/3800),
[3806](https://github.com/jupyter/notebook/pull/3806), [3883](https://github.com/jupyter/notebook/pull/3883), [3908](https://github.com/jupyter/notebook/pull/3908))
Fixing problems:
- Fix breadcrumb link when running with a base url ([3905](https://github.com/jupyter/notebook/pull/3905))
- Fix possible type error when closing activity stream ([3907](https://github.com/jupyter/notebook/pull/3907))
- Disable metadata editing for non-editable cells ([3744](https://github.com/jupyter/notebook/pull/3744))
- Fix some styling and alignment of prompts caused by regressions in
5.6.0.
- Enter causing page reload in shortcuts editor ([3871](https://github.com/jupyter/notebook/pull/3871))
- Fix uploading to the same file twice ([3712](https://github.com/jupyter/notebook/pull/3712))
See the 5.7 milestone on GitHub for a complete list of [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.7)
involved in this release.
Thanks to the following contributors:
- Aaron Hall
- Benjamin Ragan-Kelley
- Bill Major
- bxy007
- Dave Aitken
- Denis Ledoux
- Félix-Antoine Fortin
- Gabriel
- Grant Nestor
- Kevin Bates
- Kristian Gregorius Hustad
- M Pacer
- Madicken Munk
- Maitiu O Ciarain
- Matthias Bussonnier
- Michael Boyle
- Michael Chirico
- Mokkapati, Praneet(ES)
- Peter Parente
- Sally Wilsak
- Steven Silvester
- Thomas Kluyver
- Walter Martin
## 5.6.0
New features:
- Execute cells by clicking icon in input prompt ([3535](https://github.com/jupyter/notebook/pull/3535), [3687](https://github.com/jupyter/notebook/pull/3687))
- New "Save as" menu option ([3289](https://github.com/jupyter/notebook/pull/3289))
- When serving on a loopback interface, protect against DNS rebinding
by checking the `Host` header from the browser ([3714](https://github.com/jupyter/notebook/pull/3714)). This check can be
disabled if necessary by setting `NotebookApp.allow_remote_access`. (Disabled by default while we work out some Mac issues in
[3754](https://github.com/jupyter/notebook/issues/3754)).
- Add kernel_info_timeout traitlet to enable restarting slow kernels ([3665](https://github.com/jupyter/notebook/pull/3665))
- Add `custom_display_host` config option to override displayed URL ([3668](https://github.com/jupyter/notebook/pull/3668))
- Add /metrics endpoint for Prometheus Metrics ([3490](https://github.com/jupyter/notebook/pull/3490))
- Update to MathJax 2.7.4 ([3751](https://github.com/jupyter/notebook/pull/3751))
- Update to jQuery 3.3 ([3655](https://github.com/jupyter/notebook/pull/3655))
- Update marked to 0.4 ([3686](https://github.com/jupyter/notebook/pull/3686))
Fixing problems:
- Don't duplicate token in displayed URL ([3656](https://github.com/jupyter/notebook/pull/3656))
- Clarify displayed URL when listening on all interfaces ([3703](https://github.com/jupyter/notebook/pull/3703))
- Don't trash non-empty directories on Windows ([3673](https://github.com/jupyter/notebook/pull/3673))
- Include LICENSE file in wheels ([3671](https://github.com/jupyter/notebook/pull/3671))
- Don't show "0 active kernels" when starting the notebook ([3696](https://github.com/jupyter/notebook/pull/3696))
Testing:
- Add find replace test ([3630](https://github.com/jupyter/notebook/pull/3630))
- Selenium test for deleting all cells ([3601](https://github.com/jupyter/notebook/pull/3601))
- Make creating a new notebook more robust ([3726](https://github.com/jupyter/notebook/pull/3726))
Thanks to the following contributors:
- Arovit Narula ([arovit](https://github.com/arovit))
- lucasoshiro ([lucasoshiro](https://github.com/lucasoshiro))
- M Pacer ([mpacer](https://github.com/mpacer))
- Thomas Kluyver ([takluyver](https://github.com/takluyver))
- Todd ([toddrme2178](https://github.com/toddrme2178))
- Yuvi Panda ([yuvipanda](https://github.com/yuvipanda))
See the 5.6 milestone on GitHub for a complete list of [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.6)
involved in this release.
## 5.5.0
New features:
- The files list now shows file sizes ([3539](https://github.com/jupyter/notebook/pull/3539))
- Add a quit button in the dashboard ([3004](https://github.com/jupyter/notebook/pull/3004))
- Display hostname in the terminal when running remotely ([3356](https://github.com/jupyter/notebook/pull/3356), [3593](https://github.com/jupyter/notebook/pull/3593))
- Add slides exportation/download to the menu ([3287](https://github.com/jupyter/notebook/pull/3287))
- Add any extra installed nbconvert exporters to the "Download as"
menu ([3323](https://github.com/jupyter/notebook/pull/3323))
- Editor: warning when overwriting a file that is modified on disk ([2783](https://github.com/jupyter/notebook/pull/2783))
- Display a warning message if cookies are not enabled ([3511](https://github.com/jupyter/notebook/pull/3511))
- Basic `__version__` reporting for extensions ([3541](https://github.com/jupyter/notebook/pull/3541))
- Add `NotebookApp.terminals_enabled` config option ([3478](https://github.com/jupyter/notebook/pull/3478))
- Make buffer time between last modified on disk and last modified on
last save configurable ([3273](https://github.com/jupyter/notebook/pull/3273))
- Allow binding custom shortcuts for 'close and halt' ([3314](https://github.com/jupyter/notebook/pull/3314))
- Add description for 'Trusted' notification ([3386](https://github.com/jupyter/notebook/pull/3386))
- Add `settings['activity_sources']` ([3401](https://github.com/jupyter/notebook/pull/3401))
- Add an `output_updated.OutputArea` event ([3560](https://github.com/jupyter/notebook/pull/3560))
Fixing problems:
- Fixes to improve web accessibility ([3507](https://github.com/jupyter/notebook/pull/3507))
- Fixed color contrast issue in tree.less ([3336](https://github.com/jupyter/notebook/pull/3336))
- Allow cancelling upload of large files ([3373](https://github.com/jupyter/notebook/pull/3373))
- Don't clear login cookie on requests without cookie ([3380](https://github.com/jupyter/notebook/pull/3380))
- Don't trash files on different device to home dir on Linux ([3304](https://github.com/jupyter/notebook/pull/3304))
- Clear waiting asterisks when restarting kernel ([3494](https://github.com/jupyter/notebook/pull/3494))
- Fix output prompt when `execution_count` missing ([3236](https://github.com/jupyter/notebook/pull/3236))
- Make the 'changed on disk' dialog work when displayed twice ([3589](https://github.com/jupyter/notebook/pull/3589))
- Fix going back to root directory with history in notebook list ([3411](https://github.com/jupyter/notebook/pull/3411))
- Allow defining keyboard shortcuts for missing actions ([3561](https://github.com/jupyter/notebook/pull/3561))
- Prevent default on pageup/pagedown when completer is active ([3500](https://github.com/jupyter/notebook/pull/3500))
- Prevent default event handling on new terminal ([3497](https://github.com/jupyter/notebook/pull/3497))
- ConfigManager should not write out default values found in the .d
directory ([3485](https://github.com/jupyter/notebook/pull/3485))
- Fix leak of iopub object in activity monitoring ([3424](https://github.com/jupyter/notebook/pull/3424))
- Javascript lint in notebooklist.js ([3409](https://github.com/jupyter/notebook/pull/3409))
- Some Javascript syntax fixes ([3294](https://github.com/jupyter/notebook/pull/3294))
- Convert native for loop to `Array.forEach()` ([3477](https://github.com/jupyter/notebook/pull/3477))
- Disable cache when downloading nbconvert output ([3484](https://github.com/jupyter/notebook/pull/3484))
- Add missing digestmod arg to HMAC ([3399](https://github.com/jupyter/notebook/pull/3399))
- Log OSErrors failing to create less-critical files during startup ([3384](https://github.com/jupyter/notebook/pull/3384))
- Use powershell on Windows ([3379](https://github.com/jupyter/notebook/pull/3379))
- API spec improvements, API handler improvements ([3368](https://github.com/jupyter/notebook/pull/3368))
- Set notebook to dirty state after change to kernel metadata ([3350](https://github.com/jupyter/notebook/pull/3350))
- Use CSP header to treat served files as belonging to a separate
origin ([3341](https://github.com/jupyter/notebook/pull/3341))
- Don't install gettext into builtins ([3330](https://github.com/jupyter/notebook/pull/3330))
- Add missing `import _` ([3316](https://github.com/jupyter/notebook/pull/3316),
[3326](https://github.com/jupyter/notebook/pull/3326))
- Write `notebook.json` file atomically ([3305](https://github.com/jupyter/notebook/pull/3305))
- Fix clicking with modifiers, page title updates ([3282](https://github.com/jupyter/notebook/pull/3282))
- Upgrade jQuery to version 2.2 ([3428](https://github.com/jupyter/notebook/pull/3428))
- Upgrade xterm.js to 3.1.0 ([3189](https://github.com/jupyter/notebook/pull/3189))
- Upgrade moment.js to 2.19.3 ([3562](https://github.com/jupyter/notebook/pull/3562))
- Upgrade CodeMirror to 5.35 ([3372](https://github.com/jupyter/notebook/pull/3372))
- "Require" pyzmq>=17 ([3586](https://github.com/jupyter/notebook/pull/3586))
Documentation:
- Documentation updates and organisation ([3584](https://github.com/jupyter/notebook/pull/3584))
- Add section in docs about privacy ([3571](https://github.com/jupyter/notebook/pull/3571))
- Add explanation on how to change the type of a cell to Markdown ([3377](https://github.com/jupyter/notebook/pull/3377))
- Update docs with confd implementation details ([3520](https://github.com/jupyter/notebook/pull/3520))
- Add more information for where `jupyter_notebook_config.py` is
located ([3346](https://github.com/jupyter/notebook/pull/3346))
- Document options to enable nbextensions in specific sections ([3525](https://github.com/jupyter/notebook/pull/3525))
- jQuery attribute selector value MUST be surrounded by quotes ([3527](https://github.com/jupyter/notebook/pull/3527))
- Do not execute special notebooks with nbsphinx ([3360](https://github.com/jupyter/notebook/pull/3360))
- Other minor fixes in [3288](https://github.com/jupyter/notebook/pull/3288),
[3528](https://github.com/jupyter/notebook/pull/3528), [3293](https://github.com/jupyter/notebook/pull/3293), [3367](https://github.com/jupyter/notebook/pull/3367)
Testing:
- Testing with Selenium & Sauce labs ([3321](https://github.com/jupyter/notebook/pull/3321))
- Selenium utils + markdown rendering tests ([3458](https://github.com/jupyter/notebook/pull/3458))
- Convert insert cell tests to Selenium ([3508](https://github.com/jupyter/notebook/pull/3508))
- Convert prompt numbers tests to Selenium ([3554](https://github.com/jupyter/notebook/pull/3554))
- Convert delete cells tests to Selenium ([3465](https://github.com/jupyter/notebook/pull/3465))
- Convert undelete cell tests to Selenium ([3475](https://github.com/jupyter/notebook/pull/3475))
- More selenium testing utilities ([3412](https://github.com/jupyter/notebook/pull/3412))
- Only check links when build is trigger by Travis Cron job ([3493](https://github.com/jupyter/notebook/pull/3493))
- Fix Appveyor build errors ([3430](https://github.com/jupyter/notebook/pull/3430))
- Undo patches in teardown before attempting to delete files ([3459](https://github.com/jupyter/notebook/pull/3459))
- Get tests running with tornado 5 ([3398](https://github.com/jupyter/notebook/pull/3398))
- Unpin ipykernel version on Travis ([3223](https://github.com/jupyter/notebook/pull/3223))
Thanks to the following contributors:
- Arovit Narula ([arovit](https://github.com/arovit))
- Ashley Teoh ([ashleytqy](https://github.com/ashleytqy))
- Nicholas Bollweg ([bollwyvl](https://github.com/bollwyvl))
- Alex Rothberg ([cancan101](https://github.com/cancan101))
- Celina Kilcrease ([ckilcrease](https://github.com/ckilcrease))
- dabuside ([dabuside](https://github.com/dabuside))
- Damian Avila ([damianavila](https://github.com/damianavila))
- Dana Lee ([danagilliann](https://github.com/danagilliann))
- Dave Hirschfeld ([dhirschfeld](https://github.com/dhirschfeld))
- Heng GAO ([ehengao](https://github.com/ehengao))
- Leo Gallucci ([elgalu](https://github.com/elgalu))
- Evan Van Dam ([evandam](https://github.com/evandam))
- forbxy ([forbxy](https://github.com/forbxy))
- Grant Nestor ([gnestor](https://github.com/gnestor))
- Ethan T. Hendrix ([hendrixet](https://github.com/hendrixet))
- Miro Hrončok ([hroncok](https://github.com/hroncok))
- Paul Ivanov ([ivanov](https://github.com/ivanov))
- Darío Hereñú ([kant](https://github.com/kant))
- Kevin Bates ([kevin-bates](https://github.com/kevin-bates))
- Maarten Breddels ([maartenbreddels](https://github.com/maartenbreddels))
- Michael Droettboom ([mdboom](https://github.com/mdboom))
- Min RK ([minrk](https://github.com/minrk))
- M Pacer ([mpacer](https://github.com/mpacer))
- Peter Parente ([parente](https://github.com/parente))
- Paul Masson ([paulmasson](https://github.com/paulmasson))
- Philipp Rudiger ([philippjfr](https://github.com/philippjfr))
- Mac Knight (Shels1909)
- Hisham Elsheshtawy ([Sheshtawy](https://github.com/Sheshtawy))
- Simon Biggs ([SimonBiggs](https://github.com/SimonBiggs))
- Sunil Hari (`@sunilhari`)
- Thomas Kluyver ([takluyver](https://github.com/takluyver))
- Tim Klever ([tklever](https://github.com/tklever))
- Gabriel Ruiz ([unnamedplay-r](https://github.com/unnamedplay-r))
- Vaibhav Sagar ([vaibhavsagar](https://github.com/vaibhavsagar))
- William Hosford ([whosford](https://github.com/whosford))
- Hong ([xuhdev](https://github.com/xuhdev))
See the 5.5 milestone on GitHub for a complete list of [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.5)
involved in this release.
## 5.4.1
A security release to fix [CVE-2018-8768](http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-8768).
Thanks to [Alex](https://hackerone.com/pisarenko) for identifying this
bug, and Jonathan Kamens and Scott Sanderson at Quantopian for verifying
it and bringing it to our attention.
## 5.4.0
- Fix creating files and folders after navigating directories in the
dashboard ([3264](https://github.com/jupyter/notebook/pull/3264)).
- Enable printing notebooks in colour, removing the CSS that made
everything black and white ([3212](https://github.com/jupyter/notebook/pull/3212)).
- Limit the completion options displayed in the notebook to 1000, to
avoid performance issues with very long lists ([3195](https://github.com/jupyter/notebook/pull/3195)).
- Accessibility improvements in `tree.html` ([3271](https://github.com/jupyter/notebook/pull/3271)).
- Added alt-text to the kernel logo image in the notebook UI ([3228](https://github.com/jupyter/notebook/pull/3228)).
- Added a test on Travis CI to flag if symlinks are accidentally
introduced in the future. This should prevent the issue that
necessitated `release-5.3.1`{.interpreted-text role="ref"} ([3227](https://github.com/jupyter/notebook/pull/3227)).
- Use lowercase letters for random IDs generated in our Javascript ([3264](https://github.com/jupyter/notebook/pull/3264)).
- Removed duplicate code setting `TextCell.notebook` ([3256](https://github.com/jupyter/notebook/pull/3256)).
Thanks to the following contributors:
- Alex Soderman ([asoderman](https://github.com/asoderman))
- Matthias Bussonnier ([Carreau](https://github.com/Carreau))
- Min RK ([minrk](https://github.com/minrk))
- Nitesh Sawant ([ns23](https://github.com/ns23))
- Thomas Kluyver ([takluyver](https://github.com/takluyver))
- Yuvi Panda ([yuvipanda](https://github.com/yuvipanda))
See the 5.4 milestone on GitHub for a complete list of [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.4)
involved in this release.
## 5.3.1
Replaced a symlink in the repository with a copy, to fix issues
installing on Windows ([3220](https://github.com/jupyter/notebook/pull/3220)).
## 5.3.0
This release introduces a couple notable improvements, such as terminal
support for Windows and support for OS trash (files deleted from the
notebook dashboard are moved to the OS trash vs. deleted permanently).
- Add support for terminals on windows ([3087](https://github.com/jupyter/notebook/pull/3087)).
- Add a "restart and run all" button to the toolbar ([2965](https://github.com/jupyter/notebook/pull/2965)).
- Send files to os trash mechanism on delete ([1968](https://github.com/jupyter/notebook/pull/1968)).
- Allow programmatic copy to clipboard ([3088](https://github.com/jupyter/notebook/pull/3088)).
- Use DOM History API for navigating between directories in the file
browser ([3115](https://github.com/jupyter/notebook/pull/3115)).
- Add translated files to folder(docs-translations) ([3065](https://github.com/jupyter/notebook/pull/3065)).
- Allow non empty dirs to be deleted ([3108](https://github.com/jupyter/notebook/pull/3108)).
- Set cookie on base_url ([2959](https://github.com/jupyter/notebook/pull/2959)).
- Allow token-authenticated requests cross-origin by default ([2920](https://github.com/jupyter/notebook/pull/2920)).
- Change cull_idle_timeout_minimum to 1 from 300 ([2910](https://github.com/jupyter/notebook/pull/2910)).
- Config option to shut down server after n seconds with no kernels ([2963](https://github.com/jupyter/notebook/pull/2963)).
- Display a "close" button on load notebook error ([3176](https://github.com/jupyter/notebook/pull/3176)).
- Add action to command palette to run CodeMirror's "indentAuto"
on selection ([3175](https://github.com/jupyter/notebook/pull/3175)).
- Add option to specify extra services ([3158](https://github.com/jupyter/notebook/pull/3158)).
- Warn_bad_name should not use global name ([3160](https://github.com/jupyter/notebook/pull/3160)).
- Avoid overflow of hidden form ([3148](https://github.com/jupyter/notebook/pull/3148)).
- Fix shutdown trans loss ([3147](https://github.com/jupyter/notebook/pull/3147)).
- Find available kernelspecs more efficiently ([3136](https://github.com/jupyter/notebook/pull/3136)).
- Don't try to translate missing help strings ([3122](https://github.com/jupyter/notebook/pull/3122)).
- Frontend/extension-config: allow default json files in a .d
directory ([3116](https://github.com/jupyter/notebook/pull/3116)).
- Use \[requirejs\]{.title-ref} vs. \[require\]{.title-ref} ([3097](https://github.com/jupyter/notebook/pull/3097)).
- Fixes some ui bugs in firefox #3044 ([3058](https://github.com/jupyter/notebook/pull/3058)).
- Compare non-specific language code when choosing to use arabic
numerals ([3055](https://github.com/jupyter/notebook/pull/3055)).
- Fix save-script deprecation ([3053](https://github.com/jupyter/notebook/pull/3053)).
- Include moment locales in package_data ([3051](https://github.com/jupyter/notebook/pull/3051)).
- Fix moment locale loading in bidi support ([3048](https://github.com/jupyter/notebook/pull/3048)).
- Tornado 5: periodiccallback loop arg will be removed ([3034](https://github.com/jupyter/notebook/pull/3034)).
- Use \[/files\]{.title-ref} prefix for pdf-like files ([3031](https://github.com/jupyter/notebook/pull/3031)).
- Add folder for document translation ([3022](https://github.com/jupyter/notebook/pull/3022)).
- When login-in via token, let a chance for user to set the password ([3008](https://github.com/jupyter/notebook/pull/3008)).
- Switch to jupyter_core implementation of ensure_dir_exists ([3002](https://github.com/jupyter/notebook/pull/3002)).
- Send http shutdown request on 'stop' subcommand ([3000](https://github.com/jupyter/notebook/pull/3000)).
- Work on loading ui translations ([2969](https://github.com/jupyter/notebook/pull/2969)).
- Fix ansi inverse ([2967](https://github.com/jupyter/notebook/pull/2967)).
- Add send2trash to requirements for building docs ([2964](https://github.com/jupyter/notebook/pull/2964)).
- I18n readme.md improvement ([2962](https://github.com/jupyter/notebook/pull/2962)).
- Add 'reason' field to json error responses ([2958](https://github.com/jupyter/notebook/pull/2958)).
- Add some padding for stream outputs ([3194](https://github.com/jupyter/notebook/pull/3194)).
- Always use setuptools in `setup.py` ([3206](https://github.com/jupyter/notebook/pull/3206)).
- Fix clearing cookies on logout when `base_url` is configured ([3207](https://github.com/jupyter/notebook/pull/3207)).
Thanks to the following contributors:
- bacboc ([bacboc](https://github.com/bacboc))
- Steven Silvester ([blink1073](https://github.com/blink1073))
- Matthias Bussonnier ([Carreau](https://github.com/Carreau))
- ChungJooHo ([ChungJooHo](https://github.com/ChungJooHo))
- edida ([edida](https://github.com/edida))
- Francesco Franchina (`ferdas`)
- forbxy ([forbxy](https://github.com/forbxy))
- Grant Nestor ([gnestor](https://github.com/gnestor))
- Josh Barnes ([jcb91](https://github.com/jcb91))
- JocelynDelalande ([JocelynDelalande](https://github.com/JocelynDelalande))
- Karthik Balakrishnan ([karthikb351](https://github.com/karthikb351))
- Kevin Bates ([kevin-bates](https://github.com/kevin-bates))
- Kirit Thadaka ([kirit93](https://github.com/kirit93))
- Lilian Besson ([Naereen](https://github.com/Naereen))
- Maarten Breddels ([maartenbreddels](https://github.com/maartenbreddels))
- Madhu94 ([Madhu94](https://github.com/Madhu94))
- Matthias Geier ([mgeier](https://github.com/mgeier))
- Michael Heilman ([mheilman](https://github.com/mheilman))
- Min RK ([minrk](https://github.com/minrk))
- PHaeJin ([PHaeJin](https://github.com/PHaeJin))
- Sukneet ([Sukneet](https://github.com/Sukneet))
- Thomas Kluyver ([takluyver](https://github.com/takluyver))
See the 5.3 milestone on GitHub for a complete list of [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.3)
involved in this release.
## 5.2.1
- Fix invisible CodeMirror cursor at specific browser zoom levels ([2983](https://github.com/jupyter/notebook/pull/2983)).
- Fix nbconvert handler causing broken export to PDF ([2981](https://github.com/jupyter/notebook/pull/2981)).
- Fix the prompt_area argument of the output area constructor. ([2961](https://github.com/jupyter/notebook/pull/2961)).
- Handle a compound extension in new_untitled ([2949](https://github.com/jupyter/notebook/pull/2949)).
- Allow disabling offline message buffering ([2916](https://github.com/jupyter/notebook/pull/2916)).
Thanks to the following contributors:
- Steven Silvester ([blink1073](https://github.com/blink1073))
- Grant Nestor ([gnestor](https://github.com/gnestor))
- Jason Grout ([jasongrout](https://github.com/jasongrout))
- Min RK ([minrk](https://github.com/minrk))
- M Pacer ([mpacer](https://github.com/mpacer))
See the 5.2.1 milestone on GitHub for a complete list of [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.2.1)
involved in this release.
## 5.2.0
- Allow setting token via jupyter_token env ([2921](https://github.com/jupyter/notebook/pull/2921)).
- Fix some errors caused by raising 403 in get_current_user ([2919](https://github.com/jupyter/notebook/pull/2919)).
- Register contents_manager.files_handler_class directly ([2917](https://github.com/jupyter/notebook/pull/2917)).
- Update viewable_extensions ([2913](https://github.com/jupyter/notebook/pull/2913)).
- Show edit shortcuts modal after shortcuts modal is hidden ([2912](https://github.com/jupyter/notebook/pull/2912)).
- Improve edit/view behavior ([2911](https://github.com/jupyter/notebook/pull/2911)).
- The root directory of the notebook server should never be hidden ([2907](https://github.com/jupyter/notebook/pull/2907)).
- Fix notebook require config to match tools/build-main ([2888](https://github.com/jupyter/notebook/pull/2888)).
- Give page constructor default arguments ([2887](https://github.com/jupyter/notebook/pull/2887)).
- Fix codemirror.less to match codemirror's expected padding layout ([2880](https://github.com/jupyter/notebook/pull/2880)).
- Add x-xsrftoken to access-control-allow-headers ([2876](https://github.com/jupyter/notebook/pull/2876)).
- Buffer messages when websocket connection is interrupted ([2871](https://github.com/jupyter/notebook/pull/2871)).
- Load locale dynamically only when not en-us ([2866](https://github.com/jupyter/notebook/pull/2866)).
- Changed key strength to 2048 bits ([2861](https://github.com/jupyter/notebook/pull/2861)).
- Resync jsversion with python version ([2860](https://github.com/jupyter/notebook/pull/2860)).
- Allow copy operation on modified, read-only notebook ([2854](https://github.com/jupyter/notebook/pull/2854)).
- Update error handling on apihandlers ([2853](https://github.com/jupyter/notebook/pull/2853)).
- Test python 3.6 on travis, drop 3.3 ([2852](https://github.com/jupyter/notebook/pull/2852)).
- Avoid base64-literals in image tests ([2851](https://github.com/jupyter/notebook/pull/2851)).
- Upgrade xterm.js to 2.9.2 ([2849](https://github.com/jupyter/notebook/pull/2849)).
- Changed all python variables named file to file_name to not override
built_in file ([2830](https://github.com/jupyter/notebook/pull/2830)).
- Add more doc tests ([2823](https://github.com/jupyter/notebook/pull/2823)).
- Typos fix ([2815](https://github.com/jupyter/notebook/pull/2815)).
- Rename and update license \[ci skip\] ([2810](https://github.com/jupyter/notebook/pull/2810)).
- Travis builds doc ([2808](https://github.com/jupyter/notebook/pull/2808)).
- Pull request i18n ([2804](https://github.com/jupyter/notebook/pull/2804)).
- Factor out output_prompt_function, as is done with input prompt ([2774](https://github.com/jupyter/notebook/pull/2774)).
- Use rfc5987 encoding for filenames ([2767](https://github.com/jupyter/notebook/pull/2767)).
- Added path to the resources metadata, the same as in
from_filename(...) in nbconvert.exporters.py ([2753](https://github.com/jupyter/notebook/pull/2753)).
- Make "extrakeys" consistent for notebook and editor ([2745](https://github.com/jupyter/notebook/pull/2745)).
- Bidi support ([2357](https://github.com/jupyter/notebook/pull/2357)).
Special thanks to [samarsultan](https://github.com/samarsultan) and the
Arabic Competence and Globalization Center Team at IBM Egypt for adding
RTL (right-to-left) support to the notebook!
See the 5.2 milestone on GitHub for a complete list of
[issues](https://github.com/jupyter/notebook/issues?utf8=%E2%9C%93&q=is%3Aissue%20milestone%3A5.2)
and [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.2)
involved in this release.
## 5.1.0
- Preliminary i18n implementation ([2140](https://github.com/jupyter/notebook/pull/2140)).
- Expose URL with auth token in notebook UI ([2666](https://github.com/jupyter/notebook/pull/2666)).
- Fix search background style ([2387](https://github.com/jupyter/notebook/pull/2387)).
- List running notebooks without requiring `--allow-root` ([2421](https://github.com/jupyter/notebook/pull/2421)).
- Allow session of type other than notebook ([2559](https://github.com/jupyter/notebook/pull/2559)).
- Fix search background style ([2387](https://github.com/jupyter/notebook/pull/2387)).
- Fix some Markdown styling issues ([2571](https://github.com/jupyter/notebook/pull/2571)), ([2691](https://github.com/jupyter/notebook/pull/2691)) and ([2534](https://github.com/jupyter/notebook/pull/2534)).
- Remove keymaps that conflict with non-English keyboards ([2535](https://github.com/jupyter/notebook/pull/2535)).
- Add session-specific favicons (notebook, terminal, file) ([2452](https://github.com/jupyter/notebook/pull/2452)).
- Add /api/shutdown handler ([2507](https://github.com/jupyter/notebook/pull/2507)).
- Include metadata when copying a cell ([2349](https://github.com/jupyter/notebook/pull/2349)).
- Stop notebook server from command line ([2388](https://github.com/jupyter/notebook/pull/2388)).
- Improve "View" and "Edit" file handling in dashboard ([2449](https://github.com/jupyter/notebook/pull/2449)) and ([2402](https://github.com/jupyter/notebook/pull/2402)).
- Provide a promise to replace use of the
`app_initialized.NotebookApp` event ([2710](https://github.com/jupyter/notebook/pull/2710)).
- Fix disabled collapse/expand output button ([2681](https://github.com/jupyter/notebook/pull/2681)).
- Cull idle kernels using `--MappingKernelManager.cull_idle_timeout` ([2215](https://github.com/jupyter/notebook/pull/2215)).
- Allow read-only notebooks to be trusted ([2718](https://github.com/jupyter/notebook/pull/2718)).
See the 5.1 milestone on GitHub for a complete list of
[issues](https://github.com/jupyter/notebook/issues?utf8=%E2%9C%93&q=is%3Aissue%20milestone%3A5.1)
and [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A5.1)
involved in this release.
## 5.0.0
This is the first major release of the Jupyter Notebook since version
4.0 was created by the "Big Split" of IPython and Jupyter.
We encourage users to start trying JupyterLab in preparation for a
future transition.
We have merged more than 300 pull requests since 4.0. Some of the major
user-facing changes are described here.
### File sorting in the dashboard
Files in the dashboard may now be sorted by last modified date or name
([943](https://github.com/jupyter/notebook/pull/943)):
### Cell tags
There is a new cell toolbar for adding _cell tags_
([2048](https://github.com/jupyter/notebook/pull/2048)):
Cell tags are a lightweight way to customise the behaviour of tools
working with notebooks; we're working on building support for them into
tools like [nbconvert](https://nbconvert.readthedocs.io/en/latest/) and
[nbval](https://github.com/computationalmodelling/nbval). To start using
tags, select `Tags` in the `View > Cell Toolbar` menu in a notebook.
The UI for editing cell tags is basic for now; we hope to improve it in
future releases.
### Table style
The default styling for tables in the notebook has been updated
([1776](https://github.com/jupyter/notebook/pull/1776)).
### Customise keyboard shortcuts
You can now edit keyboard shortcuts for _Command Mode_ within the UI
([1347](https://github.com/jupyter/notebook/pull/1347)):
See the `Help > Edit Keyboard Shortcuts` menu item and follow the
instructions.
### Other additions
- You can copy and paste cells between notebooks, using
`Ctrl-C`{.interpreted-text role="kbd"} and
`Ctrl-V`{.interpreted-text role="kbd"} (`Cmd-C`{.interpreted-text
role="kbd"} and `Cmd-V`{.interpreted-text role="kbd"} on Mac).
- It's easier to configure a password for the notebook with the new
`jupyter notebook password` command ([2007](https://github.com/jupyter/notebook/pull/2007)).
- The file list can now be ordered by _last modified_ or by _name_ ([943](https://github.com/jupyter/notebook/pull/943)).
- Markdown cells now support attachments. Simply drag and drop an
image from your desktop to a markdown cell to add it. Unlike
relative links that you enter manually, attachments are embedded in
the notebook itself. An unreferenced attachment will be
automatically scrubbed from the notebook on save ([621](https://github.com/jupyter/notebook/pull/621)).
- Undoing cell deletion now supports undeleting multiple cells. Cells
may not be in the same order as before their deletion, depending on
the actions you did on the meantime, but this should should help
reduce the impact of accidentally deleting code.
- The file browser now has _Edit_ and _View_ buttons.
- The file browser now supports moving multiple files at once ([1088](https://github.com/jupyter/notebook/pull/1088)).
- The Notebook will refuse to run as root unless the `--allow-root`
flag is given ([1115](https://github.com/jupyter/notebook/pull/1115)).
- Keyboard shortcuts are now declarative ([1234](https://github.com/jupyter/notebook/pull/1234)).
- Toggling line numbers can now affect all cells ([1312](https://github.com/jupyter/notebook/pull/1312)).
- Add more visible _Trusted_ and _Untrusted_ notifications ([1658](https://github.com/jupyter/notebook/pull/1658)).
- The favicon (browser shortcut icon) now changes to indicate when the
kernel is busy ([1837](https://github.com/jupyter/notebook/pull/1837)).
- Header and toolbar visibility is now persisted in nbconfig and
across sessions ([1769](https://github.com/jupyter/notebook/pull/1769)).
- Load server extensions with ConfigManager so that merge happens
recursively, unlike normal config values, to make it load more
consistently with frontend extensions([2108](https://github.com/jupyter/notebook/pull/2108)).
- The notebook server now supports the bundler API
from the [jupyter_cms incubator
project](https://github.com/jupyter-incubator/contentmanagement) ([1579](https://github.com/jupyter/notebook/pull/1579)).
- The notebook server now provides information about kernel activity
in its kernel resource API ([1827](https://github.com/jupyter/notebook/pull/1827)).
Remember that upgrading `notebook` only affects the user interface.
Upgrading kernels and libraries may also provide new features, better
stability and integration with the notebook interface.
## 4.4.0
- Allow override of output callbacks to redirect output messages. This
is used to implement the ipywidgets Output widget, for example.
- Fix an async bug in message handling by allowing comm message
handlers to return a promise which halts message processing until
the promise resolves.
See the 4.4 milestone on GitHub for a complete list of
[issues](https://github.com/jupyter/notebook/issues?utf8=%E2%9C%93&q=is%3Aissue%20milestone%3A4.4)
and [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A4.4)
involved in this release.
## 4.3.2
4.3.2 is a patch release with a bug fix for CodeMirror and improved
handling of the "editable" cell metadata field.
- Monkey-patch for CodeMirror that resolves
[#2037](https://github.com/jupyter/notebook/issues/2037) without
breaking [#1967](https://github.com/jupyter/notebook/issues/1967)
- Read-only (`"editable": false`) cells can be executed but cannot be
split, merged, or deleted
See the 4.3.2 milestone on GitHub for a complete list of
[issues](https://github.com/jupyter/notebook/issues?utf8=%E2%9C%93&q=is%3Aissue%20milestone%3A4.3.2)
and [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A4.3.2)
involved in this release.
## 4.3.1
4.3.1 is a patch release with a security patch, a couple bug fixes, and
improvements to the newly-released token authentication.
**Security fix**:
- CVE-2016-9971. Fix CSRF vulnerability, where malicious forms could
create untitled files and start kernels (no remote execution or
modification of existing files) for users of certain browsers (Firefox, Internet Explorer / Edge). All previous notebook releases
are affected.
Bug fixes:
- Fix carriage return handling
- Make the font size more robust against fickle browsers
- Ignore resize events that bubbled up and didn't come from window
- Add Authorization to allowed CORS headers
- Downgrade CodeMirror to 5.16 while we figure out issues in Safari
Other improvements:
- Better docs for token-based authentication
- Further highlight token info in log output when autogenerated
See the 4.3.1 milestone on GitHub for a complete list of
[issues](https://github.com/jupyter/notebook/issues?utf8=%E2%9C%93&q=is%3Aissue%20milestone%3A4.3.1)
and [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A4.3.1)
involved in this release.
## 4.3.0
4.3 is a minor release with many bug fixes and improvements. The biggest
user-facing change is the addition of token authentication, which is
enabled by default. A token is generated and used when your browser is
opened automatically, so you shouldn't have to enter anything in the
default circumstances. If you see a login page (e.g. by switching
browsers, or launching on a new port with `--no-browser`), you get a
login URL with the token from the command `jupyter notebook list`, which
you can paste into your browser.
Highlights:
- API for creating mime-type based renderer extensions using
`OutputArea.register_mime_type` and `Notebook.render_cell_output`
methods. See
[mimerender-cookiecutter](https://github.com/jupyterlab/mimerender-cookiecutter)
for reference implementations and cookiecutter.
- Enable token authentication by default. See
`server_security`{.interpreted-text role="ref"} for more details.
- Update security docs to reflect new signature system
- Switched from term.js to xterm.js
Bug fixes:
- Ensure variable is set if exc_info is falsey
- Catch and log handler exceptions in `events.trigger`
- Add debug log for static file paths
- Don't check origin on token-authenticated requests
- Remove leftover print statement
- Fix highlighting of Python code blocks
- `json_errors` should be outermost decorator on API handlers
- Fix remove old nbserver info files
- Fix notebook mime type on download links
- Fix carriage symbol behavior
- Fix terminal styles
- Update dead links in docs
- If kernel is broken, start a new session
- Include cross-origin check when allowing login URL redirects
Other improvements:
- Allow JSON output data with mime type `application/*+json`
- Allow kernelspecs to have spaces in them for backward compat
- Allow websocket connections from scripts
- Allow `None` for post_save_hook
- Upgrade CodeMirror to 5.21
- Upgrade xterm to 2.1.0
- Docs for using comms
- Set `dirty` flag when output arrives
- Set `ws-url` data attribute when accessing a notebook terminal
- Add base aliases for nbextensions
- Include `@` operator in CodeMirror IPython mode
- Extend mathjax_url docstring
- Load nbextension in predictable order
- Improve the error messages for nbextensions
- Include cross-origin check when allowing login URL redirects
See the 4.3 milestone on GitHub for a complete list of
[issues](https://github.com/jupyter/notebook/issues?utf8=%E2%9C%93&q=is%3Aissue%20milestone%3A4.3%20)
and [pull
requests](https://github.com/jupyter/notebook/pulls?utf8=%E2%9C%93&q=is%3Apr%20milestone%3A4.3%20)
involved in this release.
## 4.2.3
4.2.3 is a small bugfix release on 4.2.
> Highlights:
- Fix regression in 4.2.2 that delayed loading custom.js until after
`notebook_loaded` and `app_initialized` events have fired.
- Fix some outdated docs and links.
## 4.2.2
4.2.2 is a small bugfix release on 4.2, with an important security fix.
All users are strongly encouraged to upgrade to 4.2.2.
> Highlights:
- **Security fix**: CVE-2016-6524, where untrusted latex output could
be added to the page in a way that could execute javascript.
- Fix missing POST in OPTIONS responses.
- Fix for downloading non-ascii filenames.
- Avoid clobbering ssl_options, so that users can specify more
detailed SSL configuration.
- Fix inverted load order in nbconfig, so user config has highest
priority.
- Improved error messages here and there.
## 4.2.1
4.2.1 is a small bugfix release on 4.2. Highlights:
- Compatibility fixes for some versions of ipywidgets
- Fix for ignored CSS on Windows
- Fix specifying destination when installing nbextensions
## 4.2.0
Release 4.2 adds a new API for enabling and installing extensions.
Extensions can now be enabled at the system-level, rather than just
per-user. An API is defined for installing directly from a Python
package, as well.
Highlighted changes:
- Upgrade MathJax to 2.6 to fix vertical-bar appearing on some
equations.
- Restore ability for notebook directory to be root (4.1 regression)
- Large outputs are now throttled, reducing the ability of output
floods to kill the browser.
- Fix the notebook ignoring cell executions while a kernel is starting
by queueing the messages.
- Fix handling of url prefixes (e.g. JupyterHub) in terminal and edit
pages.
- Support nested SVGs in output.
And various other fixes and improvements.
## 4.1.0
Bug fixes:
- Properly reap zombie subprocesses
- Fix cross-origin problems
- Fix double-escaping of the base URL prefix
- Handle invalid unicode filenames more gracefully
- Fix ANSI color-processing
- Send keepalive messages for web terminals
- Fix bugs in the notebook tour
UI changes:
- Moved the cell toolbar selector into the _View_ menu. Added a button
that triggers a "hint" animation to the main toolbar so users can
find the new location. (Click here to see a
[screencast](https://cloud.githubusercontent.com/assets/335567/10711889/59665a5a-7a3e-11e5-970f-86b89592880c.gif)
)
- Added _Restart & Run All_ to the _Kernel_ menu. Users can also bind
it to a keyboard shortcut on action
`restart-kernel-and-run-all-cells`.
- Added multiple-cell selection. Users press `Shift-Up/Down` or
`Shift-K/J` to extend selection in command mode. Various actions
such as cut/copy/paste, execute, and cell type conversions apply to
all selected cells.
- Added a command palette for executing Jupyter actions by name. Users
press `Cmd/Ctrl-Shift-P` or click the new command palette icon on
the toolbar.
- Added a _Find and Replace_ dialog to the _Edit_ menu. Users can also
press `F` in command mode to show the dialog.
Other improvements:
- Custom KernelManager methods can be Tornado coroutines, allowing
async operations.
- Make clearing output optional when rewriting input with
`set_next_input(replace=True)`.
- Added support for TLS client authentication via
`--NotebookApp.client-ca`.
- Added tags to `jupyter/notebook` releases on DockerHub. `latest`
continues to track the master branch.
See the 4.1 milestone on GitHub for a complete list of
[issues](https://github.com/jupyter/notebook/issues?page=3&q=milestone%3A4.1+is%3Aclosed+is%3Aissue&utf8=%E2%9C%93)
and [pull
requests](https://github.com/jupyter/notebook/pulls?q=milestone%3A4.1+is%3Aclosed+is%3Apr)
handled.
## 4.0.x
### 4.0.6
- fix installation of mathjax support files
- fix some double-escape regressions in 4.0.5
- fix a couple of cases where errors could prevent opening a notebook
### 4.0.5
Security fixes for maliciously crafted files.
- [CVE-2015-6938](http://www.openwall.com/lists/oss-security/2015/09/02/3):
malicious filenames
- [CVE-2015-7337](http://www.openwall.com/lists/oss-security/2015/09/16/3):
malicious binary files in text editor.
Thanks to Jonathan Kamens at Quantopian and Juan Broullón for the
reports.
### 4.0.4
- Fix inclusion of mathjax-safe extension
### 4.0.2
- Fix launching the notebook on Windows
- Fix the path searched for frontend config
### 4.0.0
First release of the notebook as a standalone package.
================================================
FILE: CONTRIBUTING.md
================================================
# Contributing to Jupyter Notebook
Thanks for contributing to Jupyter Notebook!
Make sure to follow [Project Jupyter's Code of Conduct](https://jupyter.org/governance/conduct/code-of-conduct)
for a friendly and welcoming collaborative environment.
## Setting up a development environment
Note: You will need NodeJS to build the extension package.
The `jlpm` command is JupyterLab's pinned version of [yarn](https://yarnpkg.com/) that is installed with JupyterLab. You may use
`yarn` or `npm` in lieu of `jlpm` below.
**Note**: we recommend using `mamba` to speed up the creation of the environment.
```bash
# create a new environment
mamba create -n notebook -c conda-forge python nodejs -y
# activate the environment
mamba activate notebook
# Install package in development mode
pip install -e ".[dev,docs,test]"
# Install dependencies and build packages
jlpm
jlpm build
# Link the notebook extension and @jupyter-notebook schemas
jlpm develop
# Enable the server extension
jupyter server extension enable notebook
```
`notebook` follows a monorepo structure. To build all the packages at once:
```bash
jlpm build
```
There is also a `watch` script to watch for changes and rebuild the app automatically:
```bash
jlpm watch
```
To make sure the `notebook` server extension is installed:
```bash
$ jupyter server extension list
Config dir: /home/username/.jupyter
Config dir: /home/username/miniforge3/envs/notebook/etc/jupyter
jupyterlab enabled
- Validating jupyterlab...
jupyterlab 3.0.0 OK
notebook enabled
- Validating notebook...
notebook 7.0.0a0 OK
Config dir: /usr/local/etc/jupyter
```
Then start Jupyter Notebook with:
```bash
jupyter notebook
```
### Local changes in Notebook dependencies
The development installation described above fetches JavaScript dependencies from `npm`,
according to the versions in the _package.json_ file.
However, it is sometimes useful to be able to test changes in Notebook, with dependencies (e.g. `@jupyterlab` packages) that have not yet
been published.
[yalc](https://github.com/wclr/yalc) can help you use local JavaScript packages when building Notebook, acting as a local package repository.
- Install yalc globally in your environment:
`npm install -g yalc`
- Publish your dependency package:\
`yalc publish`, from the package root directory.\
For instance, if you are developing on _@jupyterlab/ui-components_, this command must be executed from
_path_to_jupyterlab/packages/ui-components_.
- Depend on this local repository in Notebook:
- from the Notebook root directory:\
`yalc add your_package` : this will create a _dependencies_ entry in the main _package.json_ file.\
With the previous example, it would be `yalc add @jupyterlab/ui-components`.
- Notebook is a monorepo, so we want this dependency to be 'linked' as a resolution (for all sub-packages) instead
of a dependency.\
The easiest way is to manually move the new entry in _package.json_ from _dependencies_ to _resolutions_.
- Build Notebook with the local dependency:\
`jlpm install && jlpm build`
Changes in the dependency must then be built and pushed using `jlpm build && yalc push` (from the package root directory),
and fetched from Notebook using `yarn install`.
**Warning**: you need to make sure that the dependencies of Notebook and the local package match correctly,
otherwise there will be errors with webpack during build.\
In the previous example, both _@jupyterlab/ui-components_ and Notebook depend on _@jupyterlab/coreutils_. We
strongly advise you to depend on the same version.
## Running Tests
To run the tests:
```bash
jlpm run build:test
jlpm run test
```
There are also end to end tests to cover higher level user interactions, located in the `ui-tests` folder. To run these tests:
```bash
cd ui-tests
#install required packages for jlpm
jlpm
#install playwright
jlpm playwright install
# start a new Jupyter server in a terminal
jlpm start
# in a new terminal, run the tests
jlpm test
```
The `test` script calls the Playwright test runner. You can pass additional arguments to `playwright` by appending parameters to the command. For example to run the test in headed mode, `jlpm test --headed`.
Check out the [Playwright Command Line Reference](https://playwright.dev/docs/test-cli/) for more information about the available command line options.
Running the end to end tests in headful mode will trigger something like the following:

## Tasks caching
The repository is configured to use the Lerna caching system (via `nx`) for some of the development scripts.
This helps speed up rebuilds when running `jlpm run build` multiple times to avoid rebuilding packages that have not changed on disk.
You can generate a graph to have a better idea of the dependencies between all the packages using the following command:
```
npx nx graph
```
Running the command will open a browser tab by default with a graph that looks like the following:

To learn more about Lerna caching:
- https://lerna.js.org/docs/features/cache-tasks
- https://nx.dev/docs/features/cache-task-results
### Updating reference snapshots
Often a PR might make changes to the user interface, which can cause the visual regression tests to fail.
If you want to update the reference snapshots while working on a PR you can post the following sentence as a GitHub comment:
```
bot please update playwright snapshots
```
This will trigger a GitHub Action that will run the UI tests automatically and push new commits to the branch if the reference snapshots have changed.
## Code Styling
All non-python source code is formatted using [prettier](https://prettier.io) and python source code is formatted using [black](https://github.com/psf/black).
When code is modified and committed, all staged files will be
automatically formatted using pre-commit git hooks (with help from
[pre-commit](https://github.com/pre-commit/pre-commit). The benefit of
using code formatters like `prettier` and `black` is that it removes the topic of
code style from the conversation when reviewing pull requests, thereby
speeding up the review process.
As long as your code is valid,
the pre-commit hook should take care of how it should look.
`pre-commit` and its associated hooks will automatically be installed when
you run `pip install -e ".[dev,test]"`
To install `pre-commit` manually, run the following:
```shell
pip install pre-commit
pre-commit install
```
You can invoke the pre-commit hook by hand at any time with:
```shell
pre-commit run
```
which should run any autoformatting on your code
and tell you about any errors it couldn't fix automatically.
You may also install [black integration](https://github.com/psf/black#editor-integration)
into your text editor to format code automatically.
If you have already committed files before setting up the pre-commit
hook with `pre-commit install`, you can fix everything up using
`pre-commit run --all-files`. You need to make the fixing commit
yourself after that.
You may also use the prettier npm script (e.g. `npm run prettier` or
`yarn prettier` or `jlpm prettier`) to format the entire code base.
We recommend installing a prettier extension for your code editor and
configuring it to format your code with a keyboard shortcut, or
automatically on save.
Some of the hooks only run on CI by default, but you can invoke them by
running with the `--hook-stage manual` argument.
## Documentation
First make sure you have set up a development environment as described above.
Then run the following command to build the docs:
```shell
hatch run docs:build
```
In a separate terminal window, run the following command to serve the documentation:
```shell
hatch run docs:serve
```
Now open a web browser and navigate to `http://localhost:8000` to access the documentation.
## Contributing from the browser
Alternatively you can also contribute to Jupyter Notebook without setting up a local environment, directly from a web browser:
- [GitHub CodeSpaces](https://github.com/codespaces) is directly integrated into GitHub. This repository uses the [pixi](https://pixi.sh/) package manager to set up the development environment. To contribute after the Codespace is started:
- Run `pixi shell` in a terminal to activate the development environment
- Use the commands above for building the extension and running the tests, for example: `jlpm build`
- To start the application: `pixi run start`. A popup should appear with a button to open the Jupyter Notebook in a new browser tab. If the popup does not appear, you can navigate to the "Forwarded ports" panel to find the URL to the application.
- GitHub's [built-in editor](https://docs.github.com/en/repositories/working-with-files/managing-files/editing-files) is suitable for contributing small fixes.
- A more advanced [github.dev](https://docs.github.com/en/codespaces/the-githubdev-web-based-editor) editor can be accessed by pressing the dot (.) key while in the Jupyter Notebook GitHub repository
================================================
FILE: LICENSE
================================================
BSD 3-Clause License
- Copyright (c) 2001-2015, IPython Development Team
- Copyright (c) 2015-, Jupyter Development Team
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
================================================
FILE: README.md
================================================
# Jupyter Notebook

[](https://jupyter-notebook.readthedocs.io/en/latest/?badge=latest)
[](https://mybinder.org/v2/gh/jupyter/notebook/main?urlpath=tree)
The Jupyter notebook is a web-based notebook environment for interactive
computing.

## Maintained versions
We maintain the **two most recently released major versions of Jupyter Notebook**,
Classic Notebook v6 and Notebook v7. Notebook v5 is no longer maintained.
All Notebook v5 users are strongly advised to upgrade to Classic Notebook v6 as soon as possible.
Upgrading to Notebook v7 may require more work, if you use custom extensions, as extensions written
for Notebook v5 or Classic Notebook v6 are not compatible with Notebook v7.
### Notebook v7
The newest major version of Notebook is based on:
- JupyterLab components for the frontend
- Jupyter Server for the Python server
This represents a significant change to the `jupyter/notebook` code base.
To learn more about Notebook v7: https://jupyter.org/enhancement-proposals/79-notebook-v7/notebook-v7.html
### Classic Notebook v6
Maintenance and security-related issues [only](https://github.com/jupyter/notebook-team-compass/issues/5#issuecomment-1085254000) are now being addressed in the [`6.5.x`](https://github.com/jupyter/notebook/tree/6.5.x) branch.
It depends on [`nbclassic`](https://github.com/jupyter/nbclassic) for the HTML/JavaScript/CSS assets.
New features and continuous improvement is now focused on Notebook v7 (see section above).
If you have an open pull request with a new feature or if you were planning to open one, we encourage switching over to the Jupyter Server and JupyterLab architecture, and distribute it as a server extension and / or JupyterLab prebuilt extension. That way your new feature will also be compatible with the new Notebook v7.
## Jupyter notebook, the language-agnostic evolution of IPython notebook
Jupyter notebook is a language-agnostic HTML notebook application for
Project Jupyter. In 2015, Jupyter notebook was released as a part of
The Big Split™ of the IPython codebase. IPython 3 was the last major monolithic
release containing both language-agnostic code, such as the _IPython notebook_,
and language specific code, such as the _IPython kernel for Python_. As
computing spans across many languages, Project Jupyter will continue to develop the
language-agnostic **Jupyter notebook** in this repo and with the help of the
community develop language specific kernels which are found in their own
discrete repos.
- [The Big Split™ announcement](https://blog.jupyter.org/the-big-split-9d7b88a031a7)
- [Jupyter Ascending blog post](https://blog.jupyter.org/jupyter-ascending-1bf5b362d97e)
## Installation
You can find the installation documentation for the
[Jupyter platform, on ReadTheDocs](https://jupyter.readthedocs.io/en/latest/install.html).
The documentation for advanced usage of Jupyter notebook can be found
[here](https://jupyter-notebook.readthedocs.io/en/latest/).
For a local installation, make sure you have
[pip installed](https://pip.readthedocs.io/en/stable/installing/) and run:
```bash
pip install notebook
```
## Usage - Running Jupyter notebook
### Running in a local installation
Launch with:
```bash
jupyter notebook
```
### Running in a remote installation
You need some configuration before starting Jupyter notebook remotely. See [Running a notebook server](https://jupyter-server.readthedocs.io/en/latest/operators/public-server.html).
## Development Installation
See [`CONTRIBUTING.md`](CONTRIBUTING.md) for how to set up a local development installation.
## Contributing
If you are interested in contributing to the project, see [`CONTRIBUTING.md`](CONTRIBUTING.md).
## Community Guidelines and Code of Conduct
This repository is a Jupyter project and follows the Jupyter
[Community Guides and Code of Conduct](https://jupyter.readthedocs.io/en/latest/community/content-community.html).
## Resources
- [Project Jupyter website](https://jupyter.org)
- [Online Demo at jupyter.org/try](https://jupyter.org/try)
- [Documentation for Jupyter notebook](https://jupyter-notebook.readthedocs.io/en/latest/)
- [Korean Version of Installation](https://github.com/ChungJooHo/Jupyter_Kor_doc/)
- [Documentation for Project Jupyter](https://jupyter.readthedocs.io/en/latest/index.html)
- [Issues](https://github.com/jupyter/notebook/issues)
- [Technical support - Jupyter Google Group](https://discourse.jupyter.org/)
## About the Jupyter Development Team
The Jupyter Development Team is the set of all contributors to the Jupyter project.
This includes all of the Jupyter subprojects.
The core team that coordinates development on GitHub can be found here:
https://github.com/jupyter/.
## Our Copyright Policy
Jupyter uses a shared copyright model. Each contributor maintains copyright
over their contributions to Jupyter. But, it is important to note that these
contributions are typically only changes to the repositories. Thus, the Jupyter
source code, in its entirety is not the copyright of any single person or
institution. Instead, it is the collective copyright of the entire Jupyter
Development Team. If individual contributors want to maintain a record of what
changes/contributions they have specific copyright on, they should indicate
their copyright in the commit message of the change, when they commit the
change to one of the Jupyter repositories.
With this in mind, the following banner should be used in any source code file
to indicate the copyright and license terms:
```
# Copyright (c) Jupyter Development Team.
# Distributed under the terms of the Modified BSD License.
```
================================================
FILE: RELEASE.md
================================================
# Releasing Jupyter Notebook
## Using `jupyter_releaser`
The recommended way to make a release is to use [`jupyter_releaser`](https://jupyter-releaser.readthedocs.io/en/latest/get_started/making_release_from_repo.html).
## Manual Release
To create a manual release, perform the following steps:
### Set up
```bash
pip install hatch twine
git pull origin $(git branch --show-current)
git clean -dffx
```
### Update the version and apply the tag
```bash
echo "Enter new version"
read new_version
hatch version ${new_version}
git tag -a ${new_version} -m "Release ${new_version}"
```
### Build the artifacts
```bash
rm -rf dist
hatch build
```
### Publish the artifacts to pypi
```bash
twine check dist/*
twine upload dist/*
```
================================================
FILE: app/index.template.js
================================================
// Copyright (c) Jupyter Development Team.
// Distributed under the terms of the Modified BSD License.
// Inspired by: https://github.com/jupyterlab/jupyterlab/blob/master/dev_mode/index.js
import { PageConfig, URLExt } from '@jupyterlab/coreutils';
import { PluginRegistry } from '@lumino/coreutils';
require('./style.js');
require('./extraStyle.js');
function loadScript(url) {
return new Promise((resolve, reject) => {
const newScript = document.createElement('script');
newScript.onerror = reject;
newScript.onload = resolve;
newScript.async = true;
document.head.appendChild(newScript);
newScript.src = url;
});
}
async function loadComponent(url, scope) {
await loadScript(url);
// From MIT-licensed https://github.com/module-federation/module-federation-examples/blob/af043acd6be1718ee195b2511adf6011fba4233c/advanced-api/dynamic-remotes/app1/src/App.js#L6-L12
// eslint-disable-next-line no-undef
await __webpack_init_sharing__('default');
const container = window._JUPYTERLAB[scope];
// Initialize the container, it may provide shared modules and may need ours
// eslint-disable-next-line no-undef
await container.init(__webpack_share_scopes__.default);
}
async function createModule(scope, module) {
try {
const factory = await window._JUPYTERLAB[scope].get(module);
const instance = factory();
instance.__scope__ = scope;
return instance;
} catch (e) {
console.warn(
`Failed to create module: package: ${scope}; module: ${module}`
);
throw e;
}
}
/**
* The main function
*/
async function main() {
const mimeExtensionsMods = [
{{#each notebook_mime_extensions}}
require('{{ @key }}'),
{{/each}}
];
const mimeExtensions = await Promise.all(mimeExtensionsMods);
// Load the base plugins available on all pages
let baseMods = [
{{#each notebook_plugins}}
{{#if (ispage @key '/')}}
{{{ list_plugins }}}
{{/if}}
{{/each}}
];
const page = `/${PageConfig.getOption('notebookPage')}`;
switch (page) {
{{#each notebook_plugins}}
{{#unless (ispage @key '/')}}
// list all the other plugins grouped by page
case '{{ @key }}': {
baseMods = baseMods.concat([
{{{ list_plugins }}}
]);
break;
}
{{/unless}}
{{/each}}
}
// populate the list of disabled extensions
const disabled = [];
const availablePlugins = [];
/**
* Iterate over active plugins in an extension.
*
* #### Notes
* This also populates the disabled
*/
function* activePlugins(extension) {
// Handle commonjs or es2015 modules
let exports;
if (Object.prototype.hasOwnProperty.call(extension, '__esModule')) {
exports = extension.default;
} else {
// CommonJS exports.
exports = extension;
}
let plugins = Array.isArray(exports) ? exports : [exports];
for (let plugin of plugins) {
const isDisabled = PageConfig.Extension.isDisabled(plugin.id);
availablePlugins.push({
id: plugin.id,
description: plugin.description,
requires: plugin.requires ?? [],
optional: plugin.optional ?? [],
provides: plugin.provides ?? null,
autoStart: plugin.autoStart,
enabled: !isDisabled,
extension: extension.__scope__
});
if (isDisabled) {
disabled.push(plugin.id);
continue;
}
yield plugin;
}
}
const extension_data = JSON.parse(
PageConfig.getOption('federated_extensions')
);
const mods = [];
const federatedExtensionPromises = [];
const federatedMimeExtensionPromises = [];
const federatedStylePromises = [];
const extensions = await Promise.allSettled(
extension_data.map(async data => {
await loadComponent(
`${URLExt.join(
PageConfig.getOption('fullLabextensionsUrl'),
data.name,
data.load
)}`,
data.name
);
return data;
})
);
extensions.forEach(p => {
if (p.status === 'rejected') {
// There was an error loading the component
console.error(p.reason);
return;
}
const data = p.value;
if (data.extension) {
federatedExtensionPromises.push(createModule(data.name, data.extension));
}
if (data.mimeExtension) {
federatedMimeExtensionPromises.push(
createModule(data.name, data.mimeExtension)
);
}
if (data.style && !PageConfig.Extension.isDisabled(data.name)) {
federatedStylePromises.push(createModule(data.name, data.style));
}
});
// Add the base frontend extensions
const baseFrontendMods = await Promise.all(baseMods);
baseFrontendMods.forEach(p => {
for (let plugin of activePlugins(p)) {
mods.push(plugin);
}
});
// Add the federated extensions.
const federatedExtensions = await Promise.allSettled(
federatedExtensionPromises
);
federatedExtensions.forEach(p => {
if (p.status === 'fulfilled') {
for (let plugin of activePlugins(p.value)) {
mods.push(plugin);
}
} else {
console.error(p.reason);
}
});
// Add the federated mime extensions.
const federatedMimeExtensions = await Promise.allSettled(
federatedMimeExtensionPromises
);
federatedMimeExtensions.forEach(p => {
if (p.status === 'fulfilled') {
for (let plugin of activePlugins(p.value)) {
mimeExtensions.push(plugin);
}
} else {
console.error(p.reason);
}
});
// Load all federated component styles and log errors for any that do not
(await Promise.allSettled(federatedStylePromises))
.filter(({ status }) => status === 'rejected')
.forEach(({ reason }) => {
console.error(reason);
});
// Set the list of base notebook multi-page plugins so the app is aware of all
// its built-in plugins even if they are not loaded on the current page.
// For example this is useful so the Settings Editor can list the debugger
// plugin even if the debugger is only loaded on the notebook page.
PageConfig.setOption('allPlugins', '{{{ json notebook_plugins }}}');
const pluginRegistry = new PluginRegistry();
const NotebookApp = require('@jupyter-notebook/application').NotebookApp;
pluginRegistry.registerPlugins(mods);
const IServiceManager = require('@jupyterlab/services').IServiceManager;
const serviceManager = await pluginRegistry.resolveRequiredService(IServiceManager);
const app = new NotebookApp({
pluginRegistry,
serviceManager,
mimeExtensions,
availablePlugins
});
// Expose global app instance when in dev mode or when toggled explicitly.
const exposeAppInBrowser =
(PageConfig.getOption('exposeAppInBrowser') || '').toLowerCase() === 'true';
if (exposeAppInBrowser) {
window.jupyterapp = app;
}
await app.start();
}
window.addEventListener('load', main);
================================================
FILE: app/package.json
================================================
{
"name": "@jupyter-notebook/app",
"version": "7.6.0-alpha.4",
"private": true,
"scripts": {
"build": "rspack",
"build:prod": "rspack --config ./rspack.prod.config.js",
"clean": "rimraf build && jlpm run clean:static",
"clean:static": "rimraf -g \"../notebook/static/!(favicons)\"",
"watch": "rspack --watch --config rspack.config.js"
},
"resolutions": {
"@codemirror/state": "~6.5.4",
"@codemirror/view": "~6.39.15",
"@jupyter-notebook/application": "~7.6.0-alpha.4",
"@jupyter-notebook/application-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/console-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/docmanager-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/documentsearch-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/help-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/notebook-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/terminal-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/tree": "~7.6.0-alpha.4",
"@jupyter-notebook/tree-extension": "~7.6.0-alpha.4",
"@jupyter-notebook/ui-components": "~7.6.0-alpha.4",
"@jupyter/react-components": "~0.16.7",
"@jupyter/web-components": "~0.16.7",
"@jupyter/ydoc": "~3.1.0",
"@jupyterlab/application": "~4.6.0-alpha.4",
"@jupyterlab/application-extension": "~4.6.0-alpha.4",
"@jupyterlab/apputils": "~4.7.0-alpha.4",
"@jupyterlab/apputils-extension": "~4.6.0-alpha.4",
"@jupyterlab/attachments": "~4.6.0-alpha.4",
"@jupyterlab/audio-extension": "~4.6.0-alpha.4",
"@jupyterlab/cell-toolbar": "~4.6.0-alpha.4",
"@jupyterlab/cell-toolbar-extension": "~4.6.0-alpha.4",
"@jupyterlab/celltags-extension": "~4.6.0-alpha.4",
"@jupyterlab/codeeditor": "~4.6.0-alpha.4",
"@jupyterlab/codemirror": "~4.6.0-alpha.4",
"@jupyterlab/codemirror-extension": "~4.6.0-alpha.4",
"@jupyterlab/completer": "~4.6.0-alpha.4",
"@jupyterlab/completer-extension": "~4.6.0-alpha.4",
"@jupyterlab/console": "~4.6.0-alpha.4",
"@jupyterlab/console-extension": "~4.6.0-alpha.4",
"@jupyterlab/coreutils": "~6.6.0-alpha.4",
"@jupyterlab/csvviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/debugger": "~4.6.0-alpha.4",
"@jupyterlab/debugger-extension": "~4.6.0-alpha.4",
"@jupyterlab/docmanager": "~4.6.0-alpha.4",
"@jupyterlab/docmanager-extension": "~4.6.0-alpha.4",
"@jupyterlab/documentsearch": "~4.6.0-alpha.4",
"@jupyterlab/documentsearch-extension": "~4.6.0-alpha.4",
"@jupyterlab/extensionmanager": "~4.6.0-alpha.4",
"@jupyterlab/extensionmanager-extension": "~4.6.0-alpha.4",
"@jupyterlab/filebrowser": "~4.6.0-alpha.4",
"@jupyterlab/filebrowser-extension": "~4.6.0-alpha.4",
"@jupyterlab/fileeditor": "~4.6.0-alpha.4",
"@jupyterlab/fileeditor-extension": "~4.6.0-alpha.4",
"@jupyterlab/help-extension": "~4.6.0-alpha.4",
"@jupyterlab/htmlviewer": "~4.6.0-alpha.4",
"@jupyterlab/htmlviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/hub-extension": "~4.6.0-alpha.4",
"@jupyterlab/imageviewer": "~4.6.0-alpha.4",
"@jupyterlab/imageviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/javascript-extension": "~4.6.0-alpha.4",
"@jupyterlab/json-extension": "~4.6.0-alpha.4",
"@jupyterlab/logconsole-extension": "~4.6.0-alpha.4",
"@jupyterlab/lsp": "~4.6.0-alpha.4",
"@jupyterlab/lsp-extension": "~4.6.0-alpha.4",
"@jupyterlab/mainmenu": "~4.6.0-alpha.4",
"@jupyterlab/mainmenu-extension": "~4.6.0-alpha.4",
"@jupyterlab/markdownviewer": "~4.6.0-alpha.4",
"@jupyterlab/markdownviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/markedparser-extension": "~4.6.0-alpha.4",
"@jupyterlab/mathjax-extension": "~4.6.0-alpha.4",
"@jupyterlab/mermaid": "~4.6.0-alpha.4",
"@jupyterlab/mermaid-extension": "~4.6.0-alpha.4",
"@jupyterlab/metadataform": "~4.6.0-alpha.4",
"@jupyterlab/metadataform-extension": "~4.6.0-alpha.4",
"@jupyterlab/notebook": "~4.6.0-alpha.4",
"@jupyterlab/notebook-extension": "~4.6.0-alpha.4",
"@jupyterlab/observables": "~5.6.0-alpha.4",
"@jupyterlab/outputarea": "~4.6.0-alpha.4",
"@jupyterlab/pdf-extension": "~4.6.0-alpha.4",
"@jupyterlab/pluginmanager-extension": "~4.6.0-alpha.4",
"@jupyterlab/rendermime": "~4.6.0-alpha.4",
"@jupyterlab/rendermime-interfaces": "~3.14.0-alpha.4",
"@jupyterlab/running-extension": "~4.6.0-alpha.4",
"@jupyterlab/services": "~7.6.0-alpha.4",
"@jupyterlab/services-extension": "~4.6.0-alpha.4",
"@jupyterlab/settingeditor": "~4.6.0-alpha.4",
"@jupyterlab/settingeditor-extension": "~4.6.0-alpha.4",
"@jupyterlab/settingregistry": "~4.6.0-alpha.4",
"@jupyterlab/shortcuts-extension": "~5.4.0-alpha.4",
"@jupyterlab/statedb": "~4.6.0-alpha.4",
"@jupyterlab/statusbar": "~4.6.0-alpha.4",
"@jupyterlab/terminal": "~4.6.0-alpha.4",
"@jupyterlab/terminal-extension": "~4.6.0-alpha.4",
"@jupyterlab/theme-dark-extension": "~4.6.0-alpha.4",
"@jupyterlab/theme-dark-high-contrast-extension": "~4.6.0-alpha.4",
"@jupyterlab/theme-light-extension": "~4.6.0-alpha.4",
"@jupyterlab/toc-extension": "~6.6.0-alpha.4",
"@jupyterlab/tooltip": "~4.6.0-alpha.4",
"@jupyterlab/tooltip-extension": "~4.6.0-alpha.4",
"@jupyterlab/translation": "~4.6.0-alpha.4",
"@jupyterlab/translation-extension": "~4.6.0-alpha.4",
"@jupyterlab/ui-components": "~4.6.0-alpha.4",
"@jupyterlab/ui-components-extension": "~4.6.0-alpha.4",
"@jupyterlab/vega5-extension": "~4.6.0-alpha.4",
"@jupyterlab/video-extension": "~4.6.0-alpha.4",
"@lezer/common": "~1.5.0",
"@lezer/highlight": "~1.2.0",
"@lumino/algorithm": "~2.0.4",
"@lumino/application": "~2.4.8",
"@lumino/commands": "~2.3.3",
"@lumino/coreutils": "~2.2.2",
"@lumino/disposable": "~2.1.5",
"@lumino/domutils": "~2.0.4",
"@lumino/dragdrop": "~2.1.8",
"@lumino/messaging": "~2.0.4",
"@lumino/properties": "~2.0.4",
"@lumino/signaling": "~2.1.5",
"@lumino/virtualdom": "~2.0.4",
"@lumino/widgets": "~2.7.5",
"react": "~18.2.0",
"react-dom": "~18.2.0",
"yjs": "~13.6.8"
},
"dependencies": {
"@jupyter-notebook/application": "^7.6.0-alpha.4",
"@jupyter-notebook/application-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/console-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/docmanager-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/documentsearch-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/help-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/notebook-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/terminal-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/tree": "^7.6.0-alpha.4",
"@jupyter-notebook/tree-extension": "^7.6.0-alpha.4",
"@jupyter-notebook/ui-components": "^7.6.0-alpha.4",
"@jupyterlab/application-extension": "~4.6.0-alpha.4",
"@jupyterlab/apputils-extension": "~4.6.0-alpha.4",
"@jupyterlab/attachments": "~4.6.0-alpha.4",
"@jupyterlab/audio-extension": "~4.6.0-alpha.4",
"@jupyterlab/cell-toolbar-extension": "~4.6.0-alpha.4",
"@jupyterlab/celltags-extension": "~4.6.0-alpha.4",
"@jupyterlab/codemirror": "~4.6.0-alpha.4",
"@jupyterlab/codemirror-extension": "~4.6.0-alpha.4",
"@jupyterlab/completer-extension": "~4.6.0-alpha.4",
"@jupyterlab/console-extension": "~4.6.0-alpha.4",
"@jupyterlab/coreutils": "~6.6.0-alpha.4",
"@jupyterlab/csvviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/debugger-extension": "~4.6.0-alpha.4",
"@jupyterlab/docmanager-extension": "~4.6.0-alpha.4",
"@jupyterlab/documentsearch-extension": "~4.6.0-alpha.4",
"@jupyterlab/extensionmanager-extension": "~4.6.0-alpha.4",
"@jupyterlab/filebrowser-extension": "~4.6.0-alpha.4",
"@jupyterlab/fileeditor-extension": "~4.6.0-alpha.4",
"@jupyterlab/help-extension": "~4.6.0-alpha.4",
"@jupyterlab/htmlviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/hub-extension": "~4.6.0-alpha.4",
"@jupyterlab/imageviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/javascript-extension": "~4.6.0-alpha.4",
"@jupyterlab/json-extension": "~4.6.0-alpha.4",
"@jupyterlab/logconsole-extension": "~4.6.0-alpha.4",
"@jupyterlab/lsp": "~4.6.0-alpha.4",
"@jupyterlab/lsp-extension": "~4.6.0-alpha.4",
"@jupyterlab/mainmenu-extension": "~4.6.0-alpha.4",
"@jupyterlab/markdownviewer-extension": "~4.6.0-alpha.4",
"@jupyterlab/markedparser-extension": "~4.6.0-alpha.4",
"@jupyterlab/mathjax-extension": "~4.6.0-alpha.4",
"@jupyterlab/mermaid-extension": "~4.6.0-alpha.4",
"@jupyterlab/metadataform-extension": "~4.6.0-alpha.4",
"@jupyterlab/notebook-extension": "~4.6.0-alpha.4",
"@jupyterlab/pdf-extension": "~4.6.0-alpha.4",
"@jupyterlab/pluginmanager-extension": "~4.6.0-alpha.4",
"@jupyterlab/running-extension": "~4.6.0-alpha.4",
"@jupyterlab/services-extension": "~4.6.0-alpha.4",
"@jupyterlab/settingeditor": "~4.6.0-alpha.4",
"@jupyterlab/settingeditor-extension": "~4.6.0-alpha.4",
"@jupyterlab/shortcuts-extension": "~5.4.0-alpha.4",
"@jupyterlab/terminal-extension": "~4.6.0-alpha.4",
"@jupyterlab/theme-dark-extension": "~4.6.0-alpha.4",
"@jupyterlab/theme-dark-high-contrast-extension": "~4.6.0-alpha.4",
"@jupyterlab/theme-light-extension": "~4.6.0-alpha.4",
"@jupyterlab/toc-extension": "~6.6.0-alpha.4",
"@jupyterlab/tooltip-extension": "~4.6.0-alpha.4",
"@jupyterlab/translation-extension": "~4.6.0-alpha.4",
"@jupyterlab/ui-components-extension": "~4.6.0-alpha.4",
"@jupyterlab/vega5-extension": "~4.6.0-alpha.4",
"@jupyterlab/video-extension": "~4.6.0-alpha.4",
"@lumino/coreutils": "~2.2.2",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"yjs": "^13.5.40"
},
"devDependencies": {
"@jupyterlab/builder": "~4.6.0-alpha.4",
"@jupyterlab/buildutils": "~4.6.0-alpha.4",
"@rspack/cli": "^1.7.1",
"@rspack/core": "^1.7.1",
"@types/rimraf": "^3.0.2",
"fs-extra": "^8.1.0",
"glob": "~7.1.6",
"handlebars": "^4.7.7",
"rimraf": "^3.0.2",
"webpack-bundle-analyzer": "^4.8.0",
"webpack-merge": "^5.8.0",
"whatwg-fetch": "^3.0.0"
},
"jupyterlab": {
"name": "Jupyter Notebook",
"mimeExtensions": {
"@jupyterlab/javascript-extension": true,
"@jupyterlab/json-extension": true,
"@jupyterlab/pdf-extension": true,
"@jupyterlab/vega5-extension": true
},
"plugins": {
"/": {
"@jupyter-notebook/application-extension": true,
"@jupyter-notebook/console-extension": true,
"@jupyter-notebook/docmanager-extension": true,
"@jupyter-notebook/documentsearch-extension": true,
"@jupyter-notebook/help-extension": true,
"@jupyter-notebook/notebook-extension": true,
"@jupyter-notebook/terminal-extension": true,
"@jupyterlab/application-extension": [
"@jupyterlab/application-extension:context-menu",
"@jupyterlab/application-extension:faviconbusy",
"@jupyterlab/application-extension:router",
"@jupyterlab/application-extension:top-bar",
"@jupyterlab/application-extension:top-spacer"
],
"@jupyterlab/apputils-extension": [
"@jupyterlab/apputils-extension:kernels-settings",
"@jupyterlab/apputils-extension:palette",
"@jupyterlab/apputils-extension:notification",
"@jupyterlab/apputils-extension:sanitizer",
"@jupyterlab/apputils-extension:sessionDialogs",
"@jupyterlab/apputils-extension:settings",
"@jupyterlab/apputils-extension:state",
"@jupyterlab/apputils-extension:themes",
"@jupyterlab/apputils-extension:themes-palette-menu",
"@jupyterlab/apputils-extension:toolbar-registry",
"@jupyterlab/apputils-extension:utilityCommands"
],
"@jupyterlab/audio-extension": true,
"@jupyterlab/codemirror-extension": true,
"@jupyterlab/completer-extension": [
"@jupyterlab/completer-extension:base-service",
"@jupyterlab/completer-extension:inline-completer",
"@jupyterlab/completer-extension:inline-completer-factory",
"@jupyterlab/completer-extension:inline-history",
"@jupyterlab/completer-extension:manager"
],
"@jupyterlab/console-extension": [
"@jupyterlab/console-extension:cell-executor",
"@jupyterlab/console-extension:completer",
"@jupyterlab/console-extension:factory",
"@jupyterlab/console-extension:foreign",
"@jupyterlab/console-extension:tracker"
],
"@jupyterlab/csvviewer-extension": true,
"@jupyterlab/docmanager-extension": [
"@jupyterlab/docmanager-extension:plugin",
"@jupyterlab/docmanager-extension:download",
"@jupyterlab/docmanager-extension:contexts",
"@jupyterlab/docmanager-extension:manager"
],
"@jupyterlab/documentsearch-extension": [
"@jupyterlab/documentsearch-extension:plugin"
],
"@jupyterlab/filebrowser-extension": [
"@jupyterlab/filebrowser-extension:factory",
"@jupyterlab/filebrowser-extension:default-file-browser"
],
"@jupyterlab/fileeditor-extension": [
"@jupyterlab/fileeditor-extension:plugin",
"@jupyterlab/fileeditor-extension:widget-factory"
],
"@jupyterlab/help-extension": [
"@jupyterlab/help-extension:resources"
],
"@jupyterlab/htmlviewer-extension": true,
"@jupyterlab/hub-extension": true,
"@jupyterlab/imageviewer-extension": true,
"@jupyterlab/lsp-extension": true,
"@jupyterlab/mainmenu-extension": [
"@jupyterlab/mainmenu-extension:plugin"
],
"@jupyterlab/markedparser-extension": true,
"@jupyterlab/mathjax-extension": true,
"@jupyterlab/mermaid-extension": true,
"@jupyterlab/notebook-extension": [
"@jupyterlab/notebook-extension:cell-executor",
"@jupyterlab/notebook-extension:code-console",
"@jupyterlab/notebook-extension:export",
"@jupyterlab/notebook-extension:factory",
"@jupyterlab/notebook-extension:tracker",
"@jupyterlab/notebook-extension:widget-factory"
],
"@jupyterlab/pluginmanager-extension": true,
"@jupyterlab/services-extension": true,
"@jupyterlab/shortcuts-extension": true,
"@jupyterlab/terminal-extension": true,
"@jupyterlab/theme-light-extension": true,
"@jupyterlab/theme-dark-extension": true,
"@jupyterlab/theme-dark-high-contrast-extension": true,
"@jupyterlab/translation-extension": true,
"@jupyterlab/ui-components-extension": true,
"@jupyterlab/video-extension": true
},
"/tree": {
"@jupyterlab/application-extension": [
"@jupyterlab/application-extension:commands"
],
"@jupyterlab/cell-toolbar-extension": true,
"@jupyterlab/extensionmanager-extension": true,
"@jupyterlab/filebrowser-extension": [
"@jupyterlab/filebrowser-extension:browser",
"@jupyterlab/filebrowser-extension:create-new-language-file",
"@jupyterlab/filebrowser-extension:download",
"@jupyterlab/filebrowser-extension:file-upload-status",
"@jupyterlab/filebrowser-extension:open-with",
"@jupyterlab/filebrowser-extension:search",
"@jupyterlab/filebrowser-extension:share-file"
],
"@jupyter-notebook/tree-extension": true,
"@jupyterlab/running-extension": [
"@jupyterlab/running-extension:plugin"
],
"@jupyterlab/settingeditor-extension": true
},
"/notebooks": {
"@jupyterlab/celltags-extension": true,
"@jupyterlab/cell-toolbar-extension": true,
"@jupyterlab/debugger-extension": [
"@jupyterlab/debugger-extension:completions",
"@jupyterlab/debugger-extension:config",
"@jupyterlab/debugger-extension:debug-console",
"@jupyterlab/debugger-extension:main",
"@jupyterlab/debugger-extension:notebooks",
"@jupyterlab/debugger-extension:service",
"@jupyterlab/debugger-extension:sidebar",
"@jupyterlab/debugger-extension:sources",
"@jupyterlab/debugger-extension:display-registry"
],
"@jupyterlab/logconsole-extension": true,
"@jupyterlab/metadataform-extension": true,
"@jupyterlab/notebook-extension": [
"@jupyterlab/notebook-extension:active-cell-tool",
"@jupyterlab/notebook-extension:completer",
"@jupyterlab/notebook-extension:copy-output",
"@jupyterlab/notebook-extension:metadata-editor",
"@jupyterlab/notebook-extension:search",
"@jupyterlab/notebook-extension:toc",
"@jupyterlab/notebook-extension:tools",
"@jupyterlab/notebook-extension:update-raw-mimetype"
],
"@jupyterlab/toc-extension": [
"@jupyterlab/toc-extension:registry",
"@jupyterlab/toc-extension:tracker"
],
"@jupyterlab/tooltip-extension": [
"@jupyterlab/tooltip-extension:manager",
"@jupyterlab/tooltip-extension:notebooks"
]
},
"/consoles": {
"@jupyterlab/tooltip-extension": [
"@jupyterlab/tooltip-extension:manager",
"@jupyterlab/tooltip-extension:consoles"
]
},
"/edit": {
"@jupyterlab/fileeditor-extension": [
"@jupyterlab/fileeditor-extension:completer",
"@jupyterlab/fileeditor-extension:search"
],
"@jupyterlab/markdownviewer-extension": true
}
},
"singletonPackages": [
"@codemirror/state",
"@codemirror/view",
"@jupyter-notebook/tree",
"@jupyter/react-components",
"@jupyter/web-components",
"@jupyter/ydoc",
"@jupyterlab/application",
"@jupyterlab/apputils",
"@jupyterlab/cell-toolbar",
"@jupyterlab/codeeditor",
"@jupyterlab/codemirror",
"@jupyterlab/completer",
"@jupyterlab/console",
"@jupyterlab/coreutils",
"@jupyterlab/debugger",
"@jupyterlab/docmanager",
"@jupyterlab/documentsearch",
"@jupyterlab/extensionmanager",
"@jupyterlab/filebrowser",
"@jupyterlab/fileeditor",
"@jupyterlab/htmlviewer",
"@jupyterlab/imageviewer",
"@jupyterlab/lsp",
"@jupyterlab/mainmenu",
"@jupyterlab/markdownviewer",
"@jupyterlab/mermaid",
"@jupyterlab/metadataform",
"@jupyterlab/notebook",
"@jupyterlab/observables",
"@jupyterlab/outputarea",
"@jupyterlab/rendermime",
"@jupyterlab/rendermime-interfaces",
"@jupyterlab/services",
"@jupyterlab/settingeditor",
"@jupyterlab/settingregistry",
"@jupyterlab/statedb",
"@jupyterlab/statusbar",
"@jupyterlab/terminal",
"@jupyterlab/tooltip",
"@jupyterlab/translation",
"@jupyterlab/ui-components",
"@lezer/common",
"@lezer/highlight",
"@lumino/algorithm",
"@lumino/application",
"@lumino/commands",
"@lumino/coreutils",
"@lumino/disposable",
"@lumino/domutils",
"@lumino/dragdrop",
"@lumino/messaging",
"@lumino/properties",
"@lumino/signaling",
"@lumino/virtualdom",
"@lumino/widgets",
"react",
"react-dom",
"yjs"
]
}
}
================================================
FILE: app/publicpath.js
================================================
// Copyright (c) Jupyter Development Team.
// Distributed under the terms of the Modified BSD License.
// We dynamically set the webpack public path based on the page config
// settings from the JupyterLab app. We copy some of the pageconfig parsing
// logic in @jupyterlab/coreutils below, since this must run before any other
// files are loaded (including @jupyterlab/coreutils).
/**
* Get global configuration data for the Jupyter application.
*
* @param name - The name of the configuration option.
*
* @returns The config value or an empty string if not found.
*
* #### Notes
* All values are treated as strings.
* For browser based applications, it is assumed that the page HTML
* includes a script tag with the id `jupyter-config-data` containing the
* configuration as valid JSON. In order to support the classic Notebook,
* we fall back on checking for `body` data of the given `name`.
*/
function getOption(name) {
let configData = Object.create(null);
// Use script tag if available.
if (typeof document !== 'undefined' && document) {
const el = document.getElementById('jupyter-config-data');
if (el) {
configData = JSON.parse(el.textContent || '{}');
}
}
return configData[name] || '';
}
// eslint-disable-next-line no-undef
__webpack_public_path__ = getOption('fullStaticUrl') + '/';
================================================
FILE: app/rspack.config.js
================================================
// Copyright (c) Jupyter Development Team.
// Distributed under the terms of the Modified BSD License.
// Heavily inspired (and slightly tweaked) from:
// https://github.com/jupyterlab/jupyterlab/blob/master/examples/federated/core_package/rspack.config.js
const fs = require('fs-extra');
const path = require('path');
const rspack = require('@rspack/core');
const merge = require('webpack-merge').default;
const Handlebars = require('handlebars');
const { ModuleFederationPlugin } = rspack.container;
const BundleAnalyzerPlugin =
require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
const Build = require('@jupyterlab/builder').Build;
const WPPlugin = require('@jupyterlab/builder').WPPlugin;
const HtmlWebpackPlugin = require('html-webpack-plugin');
const baseConfig = require('@jupyterlab/builder/lib/webpack.config.base');
const data = require('./package.json');
const names = Object.keys(data.dependencies).filter((name) => {
const packageData = require(path.join(name, 'package.json'));
return packageData.jupyterlab !== undefined;
});
// Ensure a clear build directory.
const buildDir = path.resolve(__dirname, 'build');
if (fs.existsSync(buildDir)) {
fs.removeSync(buildDir);
}
fs.ensureDirSync(buildDir);
// Handle the extensions.
const { mimeExtensions, plugins } = data.jupyterlab;
// Create the list of extension packages from the package.json metadata
const extensionPackages = new Set();
Object.keys(plugins).forEach((page) => {
const pagePlugins = plugins[page];
Object.keys(pagePlugins).forEach((name) => {
extensionPackages.add(name);
});
});
Handlebars.registerHelper('json', function (context) {
return JSON.stringify(context);
});
// custom help to check if a page corresponds to a value
Handlebars.registerHelper('ispage', function (key, page) {
return key === page;
});
// custom helper to load the plugins on the index page
Handlebars.registerHelper('list_plugins', function () {
let str = '';
const page = this;
Object.keys(this).forEach((extension) => {
const plugin = page[extension];
if (plugin === true) {
str += `require(\'${extension}\'),\n `;
} else if (Array.isArray(plugin)) {
const plugins = plugin.map((p) => `'${p}',`).join('\n');
str += `
require(\'${extension}\').default.filter(({id}) => [
${plugins}
].includes(id)),
`;
}
});
return str;
});
// Create the entry point and other assets in build directory.
const source = fs.readFileSync('index.template.js').toString();
const template = Handlebars.compile(source);
const extData = {
notebook_plugins: plugins,
notebook_mime_extensions: mimeExtensions,
};
const indexOut = template(extData);
fs.writeFileSync(path.join(buildDir, 'index.js'), indexOut);
// Copy extra files
const cssImports = path.resolve(__dirname, 'style.js');
fs.copySync(cssImports, path.resolve(buildDir, 'extraStyle.js'));
const extras = Build.ensureAssets({
packageNames: names,
output: buildDir,
schemaOutput: path.resolve(__dirname, '..', 'notebook'),
});
/**
* Create the rspack ``shared`` configuration
*/
function createShared(packageData) {
// Set up module federation sharing config
const shared = {};
// Make sure any resolutions are shared
for (let [pkg, requiredVersion] of Object.entries(packageData.resolutions)) {
shared[pkg] = { requiredVersion };
}
// Add any extension packages that are not in resolutions (i.e., installed from npm)
for (let pkg of extensionPackages) {
if (!shared[pkg]) {
shared[pkg] = {
requiredVersion: require(`${pkg}/package.json`).version,
};
}
}
// Add dependencies and sharedPackage config from extension packages if they
// are not already in the shared config. This means that if there is a
// conflict, the resolutions package version is the one that is shared.
const extraShared = [];
for (let pkg of extensionPackages) {
let pkgShared = {};
let {
dependencies = {},
jupyterlab: { sharedPackages = {} } = {},
} = require(`${pkg}/package.json`);
for (let [dep, requiredVersion] of Object.entries(dependencies)) {
if (!shared[dep]) {
pkgShared[dep] = { requiredVersion };
}
}
// Overwrite automatic dependency sharing with custom sharing config
for (let [dep, config] of Object.entries(sharedPackages)) {
if (config === false) {
delete pkgShared[dep];
} else {
if ('bundled' in config) {
config.import = config.bundled;
delete config.bundled;
}
pkgShared[dep] = config;
}
}
extraShared.push(pkgShared);
}
// Now merge the extra shared config
const mergedShare = {};
for (let sharedConfig of extraShared) {
for (let [pkg, config] of Object.entries(sharedConfig)) {
// Do not override the basic share config from resolutions
if (shared[pkg]) {
continue;
}
// Add if we haven't seen the config before
if (!mergedShare[pkg]) {
mergedShare[pkg] = config;
continue;
}
// Choose between the existing config and this new config. We do not try
// to merge configs, which may yield a config no one wants
let oldConfig = mergedShare[pkg];
// if the old one has import: false, use the new one
if (oldConfig.import === false) {
mergedShare[pkg] = config;
}
}
}
Object.assign(shared, mergedShare);
// Transform any file:// requiredVersion to the version number from the
// imported package. This assumes (for simplicity) that the version we get
// importing was installed from the file.
for (let [pkg, { requiredVersion }] of Object.entries(shared)) {
if (requiredVersion && requiredVersion.startsWith('file:')) {
shared[pkg].requiredVersion = require(`${pkg}/package.json`).version;
}
}
// Add singleton package information
for (let pkg of packageData.jupyterlab.singletonPackages) {
if (shared[pkg]) {
shared[pkg].singleton = true;
}
}
return shared;
}
// Make a bootstrap entrypoint
const entryPoint = path.join(buildDir, 'bootstrap.js');
const bootstrap = 'import("./index.js");';
fs.writeFileSync(entryPoint, bootstrap);
if (process.env.NODE_ENV === 'production') {
baseConfig.mode = 'production';
}
if (process.argv.includes('--analyze')) {
extras.push(new BundleAnalyzerPlugin());
}
const htmlPlugins = [];
['consoles', 'edit', 'error', 'notebooks', 'terminals', 'tree'].forEach(
(name) => {
htmlPlugins.push(
new HtmlWebpackPlugin({
chunksSortMode: 'none',
template: path.join(
path.resolve('./templates'),
`${name}_template.html`
),
title: name,
filename: path.join(
path.resolve(__dirname, '..', 'notebook/templates'),
`${name}.html`
),
})
);
}
);
module.exports = [
merge(baseConfig, {
mode: 'development',
entry: ['./publicpath.js', './' + path.relative(__dirname, entryPoint)],
output: {
path: path.resolve(__dirname, '..', 'notebook/static/'),
publicPath: '{{page_config.fullStaticUrl}}/',
library: {
type: 'var',
name: ['_JUPYTERLAB', 'CORE_OUTPUT'],
},
filename: '[name].[contenthash].js',
},
optimization: {
splitChunks: {
chunks: 'all',
cacheGroups: {
jlab_core: {
test: /[\\/]node_modules[\\/]@(jupyterlab|jupyter-notebook|lumino(?!\/datagrid))[\\/]/,
name: 'notebook_core',
},
},
},
},
resolve: {
fallback: { util: false },
},
plugins: [
...htmlPlugins,
new WPPlugin.JSONLicenseWebpackPlugin({
excludedPackageTest: (packageName) =>
packageName === '@jupyter-notebook/app',
}),
new ModuleFederationPlugin({
library: {
type: 'var',
name: ['_JUPYTERLAB', 'CORE_LIBRARY_FEDERATION'],
},
name: 'CORE_FEDERATION',
shared: createShared(data),
}),
],
}),
].concat(extras);
const logPath = path.join(buildDir, 'build_log.json');
fs.writeFileSync(logPath, JSON.stringify(module.exports, null, ' '));
================================================
FILE: app/rspack.config.watch.js
================================================
/*
* Copyright (c) Jupyter Development Team.
* Distributed under the terms of the Modified BSD License.
*/
const base = require('./rspack.config');
module.exports = [
{
...base[0],
bail: false,
watch: true,
},
...base.slice(1),
];
================================================
FILE: app/rspack.prod.config.js
================================================
/*
* Copyright (c) Jupyter Development Team.
* Distributed under the terms of the Modified BSD License.
*/
const merge = require('webpack-merge').default;
const config = require('./rspack.config');
const WPPlugin = require('@jupyterlab/builder').WPPlugin;
config[0] = merge(config[0], {
mode: 'production',
devtool: 'source-map',
output: {
// Add version argument when in production so the Jupyter server
// allows caching of files (i.e., does not set the CacheControl header to no-cache to prevent caching static files)
filename: '[name].[contenthash].js?v=[contenthash]',
},
optimization: {
minimize: false,
},
plugins: [
new WPPlugin.JSONLicenseWebpackPlugin({
excludedPackageTest: (packageName) =>
packageName === '@jupyter-notebook/app',
}),
],
});
module.exports = config;
================================================
FILE: app/style.js
================================================
================================================
FILE: app/templates/consoles_template.html
================================================
{{page_config['appName'] | e}} - Console
{% block favicon %}
{% endblock %} {% if custom_css %}
{% endif %}
{# Copy so we do not modify the page_config with updates. #} {% set
page_config_full = page_config.copy() %} {# Set a dummy variable - we just
want the side effect of the update. #} {% set _ =
page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} {# Sentinel value
to say that we are on the tree page #} {% set _ =
page_config_full.update(notebookPage='consoles') %}
================================================
FILE: app/templates/edit_template.html
================================================
{{page_config['appName'] | e}} - Edit
{% block favicon %}
{% endblock %}
{# Copy so we do not modify the page_config with updates. #} {% set
page_config_full = page_config.copy() %} {# Set a dummy variable - we just
want the side effect of the update. #} {% set _ =
page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} {# Sentinel value
to say that we are on the tree page #} {% set _ =
page_config_full.update(notebookPage='edit') %}
================================================
FILE: app/templates/error_template.html
================================================
{% block title %}{{page_title | e}}{% endblock %}
{% block favicon %}{% endblock %}
{% block stylesheet %}
{% endblock %}
{% block site %}
{% endif %}
{% endblock %}
{% endblock %}
{% block script %}
{% endblock script %}
================================================
FILE: app/templates/notebooks_template.html
================================================
{{page_config['appName'] | e}} - Notebook
{% block favicon %}
{% endblock %} {% if custom_css %}
{% endif %}
{# Copy so we do not modify the page_config with updates. #} {% set
page_config_full = page_config.copy() %} {# Set a dummy variable - we just
want the side effect of the update. #} {% set _ =
page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} {# Sentinel value
to say that we are on the tree page #} {% set _ =
page_config_full.update(notebookPage='notebooks') %}
================================================
FILE: app/templates/terminals_template.html
================================================
{{page_config['appName'] | e}} - Terminal
{% block favicon %}
{% endblock %} {% if custom_css %}
{% endif %}
{# Copy so we do not modify the page_config with updates. #} {% set
page_config_full = page_config.copy() %} {# Set a dummy variable - we just
want the side effect of the update. #} {% set _ =
page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} {# Sentinel value
to say that we are on the tree page #} {% set _ =
page_config_full.update(notebookPage='terminals') %}
================================================
FILE: app/templates/tree_template.html
================================================
Home
{% block favicon %}
{% endblock %} {% if custom_css %}
{% endif %}
{# Copy so we do not modify the page_config with updates. #} {% set
page_config_full = page_config.copy() %} {# Set a dummy variable - we just
want the side effect of the update. #} {% set _ =
page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} {# Sentinel value
to say that we are on the tree page #} {% set _ =
page_config_full.update(notebookPage='tree') %}
================================================
FILE: binder/environment.yml
================================================
name: notebook
channels:
- conda-forge
dependencies:
- ipywidgets=8
- jupyterlab=4
- jupyterlab-language-pack-fr-FR
- matplotlib
- numpy
- nodejs=20
- python >=3.10,<3.11
- xeus-python
================================================
FILE: binder/example.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Welcome to Jupyter Notebook v7! 👋\n",
"\n",
"Jupyter Notebook v7 is built using the same components as JupyterLab, and reuses a lot of the work from the JupyterLab community by leveraging the new prebuilt (federated) extension system."
]
},
{
"attachments": {
"212ecd19-156e-48dd-99c7-e2ee7457de6f.png": {
"image/png": "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"
},
"2d33971b-509e-433b-809e-2f0861a13105.png": {
"image/png": "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"
},
"5aa6b072-c4d7-47de-9e75-0a107a37e2f2.png": {
"image/png": "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"
},
"c448a783-da5a-499b-a52d-62be28a72438.png": {
"image/png": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"## Files 📂 and Running Sessions 🏃♀️\n",
"\n",
"Jupyter Notebook lets you navigate the files in a separate browser tab. \n",
"\n",
"Go ahead and click on the Jupyter icon in the top left corner!\n",
"\n",
"\n",
"\n",
"It will open a new browser tab with the listing of the files on the server:\n",
"\n",
"\n",
"\n",
"It also shows the list of running sessions and terminals in the `Running` tab:\n",
"\n",
"\n",
"\n",
"Alternatively it is also possible to access this page using the command in the `View` menu:\n",
"\n",
""
]
},
{
"attachments": {
"72f98bea-d61c-40cd-8f56-29df50ae5f8d.png": {
"image/png": "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"
},
"86ac8b15-8a6b-4d4d-b315-0c8a73870e3b.png": {
"image/png": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"## Editing Files 🖊️\n",
"\n",
"Jupyter Notebook also has support for editing files. Double-click on a file (or `Right Click > Open`) to open the editor:\n",
"\n",
"\n",
"\n",
""
]
},
{
"attachments": {
"88ef6621-8ef1-4174-939c-3dcd8d9166ef.png": {
"image/png": "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"
},
"9016e117-00db-490f-80c4-fa3ed6766d0f.png": {
"image/png": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"## Terminals 🖥️\n",
"\n",
"To create a new Terminal, select `File > New > Terminal` in the menu:\n",
"\n",
"\n",
"\n",
"The terminal opens in a new browser tab:\n",
"\n",
""
]
},
{
"attachments": {
"72198f40-0581-4a18-bc23-8b4674351a97.png": {
"image/png": "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8WnDtOz0vaw17i9bbRavMjLOzDt1b9ZuOrdi6tOcxTX7nveNqWFXuU8LyXnO4nK+sXYlXXwe+RuKDkAABEAABEAABEAABEBAFlTOcqjEYKQwUnU8RB5fDiON/DF/egfSSDtfD/PTb4c7gAAIgAAIgAAIgAAIgECUBM4ipD3fRwEjhZFGOTAH7g0jHUAy/ASMdDgXnAUBEAABEAABEAABELiUBGCkg2/LmZg8fPjwyZMnz549e/HixcuXL1+9evX69es3b968ffv23cDxzXscf/fNN98MXPju7du3b968ef369atXr16+fPnixYtnz549efLk4cOHgw/wUZ6Bkb7n2wojfU9QaAYCIAACIAACIAACIHAZCJzJvtSEUSNFjVQdD5HHMNLIEaMDEAABEAABEAABEAABEBg5ARjpIPIzMUGNdBBgJGdgpJFgxU1BAARAAARAAARAAARA4EIJnMm+1ExRI0WNVB0Pkccw0sgRowMQAAEQAAEQAAEQAAEQGDkBGOkg8jMxQY10EGAkZ2CkkWDFTUEABEAABEAABEAABEDgQgmcyb7UTFEjRY1UHQ+RxzDSyBGjAxAAARAAARAAARAAARAYOQEY6SDyMzFBjXQQYCRnYKSRYMVNQQAEQAAEQAAEQAAEQOBCCZzJvtRMUSNFjVQdD5HHMNLIEaMDEAABEAABEAABEAABEBg5gQ820t/97ndffvnl119//c0333z77bd//vOfv//+e9d1/zc4fjjvY2RszsQENdIRvS8w0hGBRjcgAAIgAAIgAAIgAAIgMEICZ7IvNa+///u//8d//Md/+qd/+pd/+Zdf/OIXv/zlLzc3N/9VOf7PeR9q75HGZ2ICI430vejeHEbaZYEIBEAABEAABEAABEAABD4WAmeyL/Whb9269Q//8A93797953/+542NjV/84hf379//pXIUz/tQe480PhMTGGmk70X35jDSLgtEIAACIAACIAACIAACIPCxEDiTfakP/etf/3p3d/fRo0dPnz7d39+v1+sHBwd/+MMfvgyO5yccX33oofYeaXwmJjDSSN+L7s1hpF0WiEAABEAABEAABEAABEDgYyFwJvtSH3pnZ+e3v/3tF1988fz588PDwz/+8Y9ff/31q1evXgdH84TjzYceau+RxmdiAiON9L3o3hxG2mWBCARAAARAAARAAARAAAQ+FgJn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qVRIZQLuborFU5Xj0/bale387yOdkN9HShO6dbNYC5aANh9krRnOpzif0pN3qv5pZydjTlKa4LqVyd/Q6PWy11l7r12WYHzOzntPIc/jAAEQAAEQAAEQAAEQAIGTCXywkf7617/e3d199OjR06dP9/f36/X6wcHBH/7why+Dw3fUjqb6FdSjoyN/Zq/65aVqmRRGCiMdPlovh5EOz+0nnu2UUn/ifXA5CIAACIAACIAACIAACPzsCHywkf7Xf/3X/v5+o9F4/fr127dv//SnPzmO8+23334XHMfK8Wfv+Mtf/vL27du+r4rp230XRgojHf4/EYx0OBecBQEQAAEQAAEQAAEQAIGfM4EPNtJardZoNN6+ffvdd999//33P/zww48//vjXv/61Iw5Dqbx7967RaKhSetK3lQ6q6dAbRnHyTEywjjSKt2DIPTsD669//euPP/74ww8/fP/99999993bt28bjUatVhtyzc/kFGqkP5M3CmmCAAiAAAiAAAiAAAicP4Ez2Zfa/YcZabPZ/PLLLw8PD7/++uvXr1935u6qE3f9GEbawwTfR/oRG6n6/xViEAABEAABEAABEAABEPibIjBiI/3666+/+OKLFy9edMqknS2OegTs3TsYaQ8QGCmM9G/qLyY8LAiAAAiAAAiAAAiAwN8IgREb6cuXL//nf/7n+fPnL1++9MukMNI+98Y60uH/68FIh3PBWRAAARAAARAAARAAARD4ORMYsZE2Go3f//73BwcHh4eHR0dHr1+/hpHCSN/rfyAY6XthQiMQAAEQAAEQAAEQAAEQ+FkR+GAj3djY+NWvflUul3d2dh4+fPib3/zmv7zjv4OjOuzY29t78uRJvV5vNBow0j4X9X9FjXT4/0Aw0uFccBYEQAAEQAAEQAAEQAAEfs4EPthId3Z2fve7333xxRdfffXVy5cvG41G5ytJ/+AdwfeSdn9+9dVXv//97x8/fvzs2TN/x91Xr16dtLnRoK2NDPOZmGCv3RG9LzDSEYFGNyAAAiAAAiAAAiAAAiAwQgJnsi81r8ePH3/55ZevXr3605/+9N1333377bcdtzzlC1329/d9j/U3N4KRDoo3aqTqMOvGMNIuC0QgAAIgAAIgAAIgAAIg8LEQ+GAj7fv2lz//+c/ffPPNn/70p/8bHEPv/MUXX8BIBy1UPQMjHf7/Fox0OBec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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"## Command Palette 🎨\n",
"\n",
"Jupyter Notebook includes a command palette, just like in JupyterLab.\n",
"\n",
"Hit `Ctrl-Shift-C` or `Accel-Shift-C` to activate it. Or via the menu with `View > Activate Command Palette`:\n",
"\n",
"\n",
"\n",
"Using the palette is very convenient and can give a significant productivity boost over time!"
]
},
{
"attachments": {
"9c47f73c-24f2-4c1a-aa3a-52e231144057.png": {
"image/png": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"## Themes 🌈\n",
"\n",
"Since Jupyter Notebook v7 is heavily built on top of JupyterLab, it also has support for a Dark Mode! 🕶️\n",
"\n",
"Go to `Settings > Theme > JupyterLab Dark` to select the theme:\n",
"\n",
"\n",
"\n",
"New themes can be installed using the federated extension system. These themes will be compatible with both JupyterLab and Jupyter Notebook."
]
},
{
"attachments": {
"ac1323eb-c6e0-4b7c-80f3-7bf5f84adf98.png": {
"image/png": "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"
}
},
"cell_type": "markdown",
"metadata": {},
"source": [
"## Zen Mode 😌\n",
"\n",
"This is an exclusivity in Jupyter Notebook v7 😎\n",
"\n",
"Activate the palette and choose `Toggle Zen Mode`. The interface will focus on the notebook and the notebook only!\n",
"\n",
"\n",
"\n",
"Press `Escape` to exit, or re-run the `Toggle Zen Mode` command from the palette."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Third Party Extensions 🧩\n",
"\n",
"Jupyter Notebook v7 supports third-party extensions developed for JupyterLab 3.0+, using the new distribution system. These extensions can be installed via `pip`.\n",
"\n",
"For example the extension to enable Jupyter Widgets rendering in both JupyterLab and Jupyter Notebook can be installed using the following command (run the cell): "
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"!pip install ipywidgets"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now reload the page and resume from here. In the next section we will be able to create and use Jupyter Widgets!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Widgets\n",
"\n",
"Now let's instantiate a new widget:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"from ipywidgets import IntSlider\n",
"\n",
"slider = IntSlider()\n",
"slider"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"slider"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Rich Display\n",
"\n",
"Just like in many Jupyter Frontends, Jupyter Notebook supports rich display rendering. For example:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from IPython.display import Latex\n",
"\n",
"Latex(\n",
" r\"\"\"\\begin{eqnarray}\n",
"\\nabla \\times \\vec{\\mathbf{B}} -\\, \\frac1c\\, \\frac{\\partial\\vec{\\mathbf{E}}}{\\partial t} & = \\frac{4\\pi}{c}\\vec{\\mathbf{j}} \\\\\n",
"\\nabla \\cdot \\vec{\\mathbf{E}} & = 4 \\pi \\rho \\\\\n",
"\\nabla \\times \\vec{\\mathbf{E}}\\, +\\, \\frac1c\\, \\frac{\\partial\\vec{\\mathbf{B}}}{\\partial t} & = \\vec{\\mathbf{0}} \\\\\n",
"\\nabla \\cdot \\vec{\\mathbf{B}} & = 0\n",
"\\end{eqnarray}\"\"\"\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Matplotlib figures:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"x = np.linspace(0, 10, 100)\n",
"\n",
"plt.plot(x, np.sin(x))\n",
"plt.plot(x, np.cos(x))\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Or even HTML:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from IPython.display import HTML, display\n",
"\n",
"s = \"\"\"
\n",
"
\n",
"
Header 1
\n",
"
Header 2
\n",
"
\n",
"
\n",
"
row 1, cell 1
\n",
"
row 1, cell 2
\n",
"
\n",
"
\n",
"
row 2, cell 1
\n",
"
row 2, cell 2
\n",
"
\n",
"
\"\"\"\n",
"h = HTML(s)\n",
"display(h)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## That's it!\n",
"\n",
"Hope you enjoyed the tour. If you have more question or any other issues, don't hesitate to go to the repository on GitHub!\n",
"\n",
"https://github.com/jupyter/notebook"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
================================================
FILE: binder/postBuild
================================================
#!/bin/bash
set -euo pipefail
python -m pip install -e ".[dev,test]"
jlpm develop
================================================
FILE: buildutils/package.json
================================================
{
"name": "@jupyter-notebook/buildutils",
"version": "7.6.0-alpha.4",
"private": true,
"description": "Jupyter Notebook - Build Utilities",
"homepage": "https://github.com/jupyter/notebook",
"bugs": {
"url": "https://github.com/jupyter/notebook/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/jupyter/notebook.git"
},
"license": "BSD-3-Clause",
"author": "Project Jupyter",
"main": "lib/index.js",
"types": "lib/index.d.ts",
"directories": {
"lib": "lib/"
},
"files": [
"lib/*.d.ts",
"lib/*.js.map",
"lib/*.js"
],
"scripts": {
"build": "tsc",
"clean": "rimraf lib && rimraf tsconfig.tsbuildinfo",
"watch": "tsc -w --listEmittedFiles"
},
"dependencies": {
"@jupyterlab/buildutils": "~4.6.0-alpha.4",
"commander": "^6.2.0",
"fs-extra": "^9.1.0",
"semver": "^7.6.3",
"typescript": "~5.9.3"
},
"devDependencies": {
"@types/fs-extra": "^9.0.10",
"@types/node": "^22.13.4",
"@types/semver": "^7.5.8",
"rimraf": "^3.0.2"
}
}
================================================
FILE: buildutils/src/develop.ts
================================================
/* -----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
import commander from 'commander';
import fs from 'fs-extra';
import path from 'path';
import process from 'process';
import { run } from '@jupyterlab/buildutils';
commander
.description('Setup the repository for develop mode')
.option('--overwrite', 'Force linking the notebook schemas')
.option('--source', 'The path to the notebook package')
.action((options: any) => {
const { overwrite } = options;
const prefix = run(
'python -c "import sys; print(sys.prefix)"',
{
stdio: 'pipe',
},
true
);
const source = path.resolve(options.source ?? process.cwd());
const sourceDir = path.join(
source,
'notebook',
'schemas',
'@jupyter-notebook'
);
const destDir = path.join(
prefix,
'share',
'jupyter',
'lab',
'schemas',
'@jupyter-notebook'
);
if (overwrite) {
try {
fs.removeSync(destDir);
console.log('Removed previous destination:', destDir);
} catch {
console.info('Skip unlink', destDir);
}
}
console.log('Symlinking:', sourceDir, destDir);
fs.symlinkSync(sourceDir, destDir, 'dir');
});
commander.parse(process.argv);
================================================
FILE: buildutils/src/ensure-repo.ts
================================================
import * as path from 'path';
import * as fs from 'fs-extra';
import { writePackageData } from '@jupyterlab/buildutils';
/**
* Ensure the application package resolutions.
*/
function ensureResolutions(): string[] {
const basePath = path.resolve('.');
const corePath = path.join(basePath, 'app', 'package.json');
const corePackage = fs.readJSONSync(corePath);
corePackage.resolutions = {};
const packages = Object.keys(corePackage.dependencies).concat(
corePackage.jupyterlab.singletonPackages
);
packages.forEach(async (name) => {
let version = '';
try {
const data = require(`${name}/package.json`);
version = data.version;
} catch {
const modulePath = require.resolve(name);
const parentDir = path.dirname(path.dirname(modulePath));
const data = require(path.join(parentDir, 'package.json'));
version = data.version;
}
// Insist on a restricted version in the yarn resolution.
corePackage.resolutions[name] = `~${version}`;
});
// Write the package.json back to disk.
if (writePackageData(corePath, corePackage)) {
return ['Updated dev mode'];
}
return [];
}
if (require.main === module) {
void ensureResolutions();
}
================================================
FILE: buildutils/src/get-latest-lab-version.ts
================================================
import * as fs from 'fs-extra';
import * as semver from 'semver';
function convertPythonVersion(version: string): string {
return version
.replace('a', '-alpha')
.replace('b', '-beta')
.replace('rc', '-rc');
}
function extractVersionFromReleases(
releases: any,
versionTag: string,
currentVersion: string
): string | null {
const npmCurrentVersion = convertPythonVersion(currentVersion);
const isCurrentPreRelease = semver.prerelease(npmCurrentVersion) !== null;
if (versionTag === 'latest') {
// Find first version that is newer than current and matches pre-release criteria
const release = releases.find((r: any) => {
const version = r['tag_name'].substring(1); // Remove 'v' prefix for semver
const npmVersion = convertPythonVersion(version);
return (
(isCurrentPreRelease || !r['prerelease']) &&
semver.gte(npmVersion, npmCurrentVersion)
);
});
return release ? release['tag_name'] : null;
} else {
// Find exact version match
const release = releases.find((r: any) => r['tag_name'] === versionTag);
return release ? release['tag_name'] : null;
}
}
function extractCurrentJupyterLabVersion(): string {
const toml = fs.readFileSync('pyproject.toml', 'utf8');
const match = toml.match(/jupyterlab>=([^,]+)/);
if (!match) {
throw new Error('Could not find JupyterLab version in pyproject.toml');
}
return match[1];
}
async function findVersion(versionTag: string): Promise {
const url = 'https://api.github.com/repos/jupyterlab/jupyterlab/releases';
const response = await fetch(url);
if (!response.ok) {
const error_message = `Failed to fetch package.json from ${url}. HTTP status code: ${response.status}`;
throw new Error(error_message);
}
const currentVersion = extractCurrentJupyterLabVersion();
const releases: any = await response.json();
const version: string | null = extractVersionFromReleases(
releases,
versionTag,
currentVersion
);
if (version === null) {
const error_message = 'Invalid release tag';
throw new Error(error_message);
}
return version.substring(1);
}
async function getLatestLabVersion(): Promise {
const args: string[] = process.argv.slice(2);
if (args.length !== 2 || args[0] !== '--set-version') {
console.error('Usage: node script.js --set-version ');
process.exit(1);
}
const version_tag: string = args[1];
try {
const result: string = await findVersion(version_tag);
console.log(result);
} catch (error: any) {
console.error('Error:', error.message);
process.exit(1);
}
}
getLatestLabVersion();
================================================
FILE: buildutils/src/release-bump.ts
================================================
/* -----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/**
* Inspired by: https://github.com/jupyterlab/jupyterlab/blob/master/buildutils/src/bumpversion.ts
*/
import * as utils from '@jupyterlab/buildutils';
import commander from 'commander';
import { getPythonVersion, postbump } from './utils';
// Specify the program signature.
commander
.description('Update the version')
.option('--dry-run', 'Dry run')
.option('--force', 'Force the upgrade')
.option('--skip-commit', 'Whether to skip commit changes')
.arguments('')
.action((spec: any, opts: any) => {
// Get the previous version.
const prev = getPythonVersion();
const isFinal = /\d+\.\d+\.\d+$/.test(prev);
// Whether to commit after bumping
const commit = opts.skipCommit !== true;
// for "next", determine whether to use "patch" or "build"
if (spec === 'next') {
spec = isFinal ? 'patch' : 'build';
}
// For patch, defer to `patch:release` command
if (spec === 'patch') {
let cmd = 'jlpm run release:patch';
if (opts.force) {
cmd += ' --force';
}
if (!commit) {
cmd += ' --skip-commit';
}
utils.run(cmd);
process.exit(0);
}
// Make sure we have a valid version spec.
const options = ['major', 'minor', 'release', 'build'];
if (options.indexOf(spec) === -1) {
throw new Error(`Version spec must be one of: ${options}`);
}
if (isFinal && spec === 'build') {
throw new Error('Cannot increment a build on a final release');
}
// Run pre-bump script.
utils.prebump();
// Handle dry runs.
if (opts.dryRun) {
return;
}
// If this is a major release during the alpha cycle, bump
// just the Python version.
if (prev.indexOf('a') !== -1 && spec === 'major') {
// Bump the version.
utils.run(`hatch version ${spec}`);
// Run the post-bump script.
postbump(commit);
return;
}
// Determine the version spec to use for lerna.
let lernaVersion = 'preminor';
if (spec === 'build') {
lernaVersion = 'prerelease';
// a -> b
} else if (spec === 'release' && prev.indexOf('a') !== -1) {
lernaVersion = 'prerelease --preid=beta';
// b -> rc
} else if (spec === 'release' && prev.indexOf('b') !== -1) {
lernaVersion = 'prerelease --preid=rc';
// rc -> final
} else if (spec === 'release' && prev.indexOf('rc') !== -1) {
lernaVersion = 'patch';
}
if (lernaVersion === 'preminor') {
lernaVersion += ' --preid=alpha';
}
let cmd = `jlpm run lerna version --force-publish --no-push --no-git-tag-version ${lernaVersion}`;
if (opts.force) {
cmd += ' --yes';
}
// For a preminor release, we bump 10 minor versions so that we do
// not conflict with versions during minor releases of the top
// level package.
if (lernaVersion === 'preminor') {
for (let i = 0; i < 10; i++) {
utils.run(cmd);
}
} else {
utils.run(cmd);
}
// Bump the version.
let pySpec = spec;
if (spec === 'release') {
if (prev.indexOf('a') !== -1) {
pySpec = 'beta';
} else if (prev.indexOf('b') !== -1) {
pySpec = 'rc';
} else if (prev.indexOf('rc') !== -1) {
pySpec = 'release';
} else {
pySpec = 'alpha';
}
} else if (spec === 'build') {
if (prev.indexOf('a') !== -1) {
pySpec = 'a';
} else if (prev.indexOf('b') !== -1) {
pySpec = 'b';
} else if (prev.indexOf('rc') !== -1) {
pySpec = 'rc';
}
} else if (spec === 'major' || spec === 'minor') {
if (prev.indexOf('a') !== -1) {
pySpec = `${spec},beta`;
} else if (prev.indexOf('b') !== -1) {
pySpec = `${spec},rc`;
} else if (prev.indexOf('rc') !== -1) {
pySpec = `${spec},release`;
} else {
pySpec = `${spec},alpha`;
}
}
utils.run(`hatch version ${pySpec}`);
// Run the post-bump script.
postbump(commit);
});
commander.parse(process.argv);
================================================
FILE: buildutils/src/release-patch.ts
================================================
/* -----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/**
* Inspired by: https://github.com/jupyterlab/jupyterlab/blob/master/buildutils/src/patch-release.ts
*/
import * as utils from '@jupyterlab/buildutils';
import commander from 'commander';
import { getPythonVersion, postbump } from './utils';
// Specify the program signature.
commander
.description('Create a patch release')
.option('--force', 'Force the upgrade')
.option('--skip-commit', 'Whether to skip commit changes')
.action((options: any) => {
// Make sure we can patch release.
const pyVersion = getPythonVersion();
if (
pyVersion.includes('a') ||
pyVersion.includes('b') ||
pyVersion.includes('rc')
) {
throw new Error('Can only make a patch release from a final version');
}
// Run pre-bump actions.
utils.prebump();
// Patch the python version
utils.run('hatch version patch');
// Version the changed
let cmd =
'jlpm run lerna version patch --no-push --force-publish --no-git-tag-version';
if (options.force) {
cmd += ' --yes';
}
utils.run(cmd);
// Whether to commit after bumping
const commit = options.skipCommit !== true;
postbump(commit);
});
commander.parse(process.argv);
================================================
FILE: buildutils/src/upgrade-lab-dependencies.ts
================================================
import fs from 'fs';
import path from 'path';
const PACKAGE_JSON_PATHS: string[] = [
'app/package.json',
'buildutils/package.json',
'package.json',
'packages/application-extension/package.json',
'packages/application/package.json',
'packages/console-extension/package.json',
'packages/docmanager-extension/package.json',
'packages/documentsearch-extension/package.json',
'packages/help-extension/package.json',
'packages/lab-extension/package.json',
'packages/notebook-extension/package.json',
'packages/terminal-extension/package.json',
'packages/tree-extension/package.json',
'packages/tree/package.json',
'packages/ui-components/package.json',
'ui-tests/package.json',
];
const DEPENDENCY_GROUP = '@jupyterlab';
interface IVersion {
major: number;
minor: number;
patch: number;
preRelease?: string;
}
function parseVersion(version: string): IVersion {
const match = version.match(/^(\d+)\.(\d+)\.(\d+)(?:(a|b|rc)(\d+))?$/);
if (!match) {
throw new Error(`Invalid version format: ${version}`);
}
const [, major, minor, patch, type, preVersion] = match;
const baseVersion = {
major: parseInt(major, 10),
minor: parseInt(minor, 10),
patch: parseInt(patch, 10),
};
if (type && preVersion) {
return {
...baseVersion,
preRelease: `${type}${preVersion}`,
};
}
return baseVersion;
}
function getVersionRange(version: IVersion): string {
const baseVersion = `${version.major}.${version.minor}.${version.patch}${
version.preRelease ?? ''
}`;
return `>=${baseVersion},<${version.major}.${version.minor + 1}`;
}
function updateVersionInFile(
filePath: string,
pattern: RegExp,
version: IVersion
): void {
const content = fs.readFileSync(filePath, 'utf-8');
const versionRange = getVersionRange(version);
const updatedContent = content.replace(pattern, `$1${versionRange}`);
fs.writeFileSync(filePath, updatedContent);
}
async function updatePackageJson(newVersion: string): Promise {
const url = `https://raw.githubusercontent.com/jupyterlab/jupyterlab/v${newVersion}/jupyterlab/staging/package.json`;
const response = await fetch(url);
if (!response.ok) {
const errorMessage = `Failed to fetch package.json from ${url}. HTTP status code: ${response.status}`;
throw new Error(errorMessage);
}
// fetch the new galata version
const galataUrl = `https://raw.githubusercontent.com/jupyterlab/jupyterlab/v${newVersion}/galata/package.json`;
const galataResponse = await fetch(galataUrl);
if (!galataResponse.ok) {
const errorMessage = `Failed to fetch galata/package.json from ${galataUrl}. HTTP status code: ${galataResponse.status}`;
throw new Error(errorMessage);
}
const newPackageJson = await response.json();
const galataPackageJson = await galataResponse.json();
for (const packageJsonPath of PACKAGE_JSON_PATHS) {
const filePath: string = path.resolve(packageJsonPath);
const existingPackageJson = JSON.parse(fs.readFileSync(filePath, 'utf-8'));
const newDependencies = {
...newPackageJson.devDependencies,
...newPackageJson.resolutions,
[galataPackageJson.name]: galataPackageJson.version,
};
updateDependencyVersion(existingPackageJson, newDependencies);
fs.writeFileSync(
filePath,
JSON.stringify(existingPackageJson, null, 2) + '\n'
);
}
}
function updateDependencyVersion(existingJson: any, newJson: any): void {
if (!existingJson) {
return;
}
const sectionPaths: string[] = [
'resolutions',
'dependencies',
'devDependencies',
];
for (const section of sectionPaths) {
if (!existingJson[section]) {
continue;
}
const updated = existingJson[section];
for (const [pkg, version] of Object.entries(
existingJson[section]
)) {
if (pkg.startsWith(DEPENDENCY_GROUP) && pkg in newJson) {
if (version[0] === '^' || version[0] === '~') {
updated[pkg] = version[0] + absoluteVersion(newJson[pkg]);
} else {
updated[pkg] = absoluteVersion(newJson[pkg]);
}
}
}
}
}
function absoluteVersion(version: string): string {
if (version.length > 0 && (version[0] === '^' || version[0] === '~')) {
return version.substring(1);
}
return version;
}
const versionPattern = /(jupyterlab)(>=[\d.]+(?:[a|b|rc]\d+)?,<[\d.]+)/g;
const FILES_TO_UPDATE = ['pyproject.toml', '.pre-commit-config.yaml'];
async function upgradeLabDependencies(): Promise {
const args: string[] = process.argv.slice(2);
if (args.length < 2) {
throw new Error('Please provide the set-version flag and version');
}
const version = parseVersion(args[1]);
await updatePackageJson(args[1]); // Keep original string version for package.json
for (const file of FILES_TO_UPDATE) {
updateVersionInFile(path.resolve(file), versionPattern, version);
}
}
upgradeLabDependencies();
================================================
FILE: buildutils/src/utils.ts
================================================
import { run } from '@jupyterlab/buildutils';
/**
* Get the current version of notebook
*/
export function getPythonVersion(): string {
const cmd = 'hatch version';
const lines = run(cmd, { stdio: 'pipe' }, true).split('\n');
return lines[lines.length - 1];
}
export function postbump(commit = true): void {
// run the integrity
run('jlpm integrity');
const newPyVersion = getPythonVersion();
// Commit changes.
if (commit) {
run(`git commit -am "Release ${newPyVersion}"`);
run(`git tag ${newPyVersion}`);
}
}
================================================
FILE: buildutils/tsconfig.json
================================================
{
"extends": "../tsconfigbase",
"compilerOptions": {
"outDir": "lib",
"rootDir": "src",
"module": "commonjs"
},
"include": ["src/*"],
"references": []
}
================================================
FILE: docs/Makefile
================================================
# Makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = build
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
endif
# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage spelling gettext
help:
@echo "Please use \`make ' where is one of"
@echo " html to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files"
@echo " json to make JSON files"
@echo " htmlhelp to make HTML files and a HTML help project"
@echo " qthelp to make HTML files and a qthelp project"
@echo " applehelp to make an Apple Help Book"
@echo " devhelp to make HTML files and a Devhelp project"
@echo " epub to make an epub"
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
@echo " latexpdf to make LaTeX files and run them through pdflatex"
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
@echo " text to make text files"
@echo " man to make manual pages"
@echo " texinfo to make Texinfo files"
@echo " info to make Texinfo files and run them through makeinfo"
@echo " gettext to make PO message catalogs"
@echo " changes to make an overview of all changed/added/deprecated items"
@echo " xml to make Docutils-native XML files"
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
@echo " linkcheck to check all external links for integrity"
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
@echo " coverage to run coverage check of the documentation (if enabled)"
@echo " spelling to spell check the documentation"
clean:
rm -rf $(BUILDDIR)/*
rm -rf source/config.rst
html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml:
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle:
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp:
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/JupyterNotebook.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/JupyterNotebook.qhc"
applehelp:
$(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
@echo
@echo "Build finished. The help book is in $(BUILDDIR)/applehelp."
@echo "N.B. You won't be able to view it unless you put it in" \
"~/Library/Documentation/Help or install it in your application" \
"bundle."
devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/JupyterNotebook"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/JupyterNotebook"
@echo "# devhelp"
epub:
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)."
latexpdf:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
latexpdfja:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through platex and dvipdfmx..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text:
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo
@echo "Build finished. The text files are in $(BUILDDIR)/text."
man:
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
texinfo:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
@echo "Run \`make' in that directory to run these through makeinfo" \
"(use \`make info' here to do that automatically)."
info:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo "Running Texinfo files through makeinfo..."
make -C $(BUILDDIR)/texinfo info
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
gettext:
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
@echo
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
changes:
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo
@echo "The overview file is in $(BUILDDIR)/changes."
linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
spelling:
$(SPHINXBUILD) -b spelling $(ALLSPHINXOPTS) $(BUILDDIR)/spelling
@echo "Spell check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/spelling/output.txt."
doctest:
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt."
coverage:
$(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage
@echo "Testing of coverage in the sources finished, look at the " \
"results in $(BUILDDIR)/coverage/python.txt."
xml:
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
@echo
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
pseudoxml:
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
@echo
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
================================================
FILE: docs/jsdoc_config.json
================================================
{
"markdown": {
"parser": "gfm"
},
"plugins": ["plugins/markdown", "jsdoc_plugin.js"],
"source": {
"include": ["../notebook/static/notebook/js/notebook.js"]
},
"tags": {
"allowUnknownTags": true
},
"templates": {
"cleverLinks": false,
"monospaceLinks": false
}
}
================================================
FILE: docs/jsdoc_plugin.js
================================================
exports.handlers = {
newDoclet: function (e) {
// e.doclet will refer to the newly created doclet
// you can read and modify properties of that doclet if you wish
if (typeof e.doclet.name === 'string') {
if (e.doclet.name[0] === '_') {
console.log(
'Private method "' + e.doclet.longname + '" not documented.'
);
e.doclet.memberof = '';
}
}
},
};
================================================
FILE: docs/make.bat
================================================
@ECHO OFF
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set BUILDDIR=build
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source
set I18NSPHINXOPTS=%SPHINXOPTS% source
if NOT "%PAPER%" == "" (
set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
)
if "%1" == "" goto help
if "%1" == "help" (
:help
echo.Please use `make ^` where ^ is one of
echo. html to make standalone HTML files
echo. dirhtml to make HTML files named index.html in directories
echo. singlehtml to make a single large HTML file
echo. pickle to make pickle files
echo. json to make JSON files
echo. htmlhelp to make HTML files and a HTML help project
echo. qthelp to make HTML files and a qthelp project
echo. devhelp to make HTML files and a Devhelp project
echo. epub to make an epub
echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
echo. text to make text files
echo. man to make manual pages
echo. texinfo to make Texinfo files
echo. gettext to make PO message catalogs
echo. changes to make an overview over all changed/added/deprecated items
echo. xml to make Docutils-native XML files
echo. pseudoxml to make pseudoxml-XML files for display purposes
echo. linkcheck to check all external links for integrity
echo. doctest to run all doctests embedded in the documentation if enabled
echo. coverage to run coverage check of the documentation if enabled
goto end
)
if "%1" == "clean" (
for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
del /q /s %BUILDDIR%\*
goto end
)
REM Check if sphinx-build is available and fallback to Python version if any
%SPHINXBUILD% 2> nul
if errorlevel 9009 goto sphinx_python
goto sphinx_ok
:sphinx_python
set SPHINXBUILD=python -m sphinx.__init__
%SPHINXBUILD% 2> nul
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.http://sphinx-doc.org/
exit /b 1
)
:sphinx_ok
if "%1" == "html" (
%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/html.
goto end
)
if "%1" == "dirhtml" (
%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
goto end
)
if "%1" == "singlehtml" (
%SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
goto end
)
if "%1" == "pickle" (
%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can process the pickle files.
goto end
)
if "%1" == "json" (
%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can process the JSON files.
goto end
)
if "%1" == "htmlhelp" (
%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can run HTML Help Workshop with the ^
.hhp project file in %BUILDDIR%/htmlhelp.
goto end
)
if "%1" == "qthelp" (
%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished; now you can run "qcollectiongenerator" with the ^
.qhcp project file in %BUILDDIR%/qthelp, like this:
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\JupyterNotebook.qhcp
echo.To view the help file:
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\JupyterNotebook.ghc
goto end
)
if "%1" == "devhelp" (
%SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
if errorlevel 1 exit /b 1
echo.
echo.Build finished.
goto end
)
if "%1" == "epub" (
%SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The epub file is in %BUILDDIR%/epub.
goto end
)
if "%1" == "latex" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
if errorlevel 1 exit /b 1
echo.
echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "latexpdf" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
cd %BUILDDIR%/latex
make all-pdf
cd %~dp0
echo.
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "latexpdfja" (
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
cd %BUILDDIR%/latex
make all-pdf-ja
cd %~dp0
echo.
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
goto end
)
if "%1" == "text" (
%SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The text files are in %BUILDDIR%/text.
goto end
)
if "%1" == "man" (
%SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The manual pages are in %BUILDDIR%/man.
goto end
)
if "%1" == "texinfo" (
%SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
goto end
)
if "%1" == "gettext" (
%SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
goto end
)
if "%1" == "changes" (
%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
if errorlevel 1 exit /b 1
echo.
echo.The overview file is in %BUILDDIR%/changes.
goto end
)
if "%1" == "linkcheck" (
%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
if errorlevel 1 exit /b 1
echo.
echo.Link check complete; look for any errors in the above output ^
or in %BUILDDIR%/linkcheck/output.txt.
goto end
)
if "%1" == "doctest" (
%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
if errorlevel 1 exit /b 1
echo.
echo.Testing of doctests in the sources finished, look at the ^
results in %BUILDDIR%/doctest/output.txt.
goto end
)
if "%1" == "coverage" (
%SPHINXBUILD% -b coverage %ALLSPHINXOPTS% %BUILDDIR%/coverage
if errorlevel 1 exit /b 1
echo.
echo.Testing of coverage in the sources finished, look at the ^
results in %BUILDDIR%/coverage/python.txt.
goto end
)
if "%1" == "xml" (
%SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The XML files are in %BUILDDIR%/xml.
goto end
)
if "%1" == "pseudoxml" (
%SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml.
goto end
)
:end
================================================
FILE: docs/resources/Info.plist.example
================================================
# Add this into the info.plist file of an application
# and the icns icon in Contents/Resources
# then move the application twice :
# https://superuser.com/questions/178316/how-to-set-an-icon-for-a-file-type-on-mac
CFBundleDocumentTypesCFBundleTypeExtensionsipynbCFBundleTypeIconFileipynb_mac_iconCFBundleTypeNameIPython notebook fileCFBundleTypeRoleNone
================================================
FILE: docs/resources/generate_icons.sh
================================================
#!/bin/bash
INKSCAPE=inkscape
${INKSCAPE} -z -C --file=ipynb_icon_16x16.svg --export-png=ipynb_icon_16x16_uncrush.png
${INKSCAPE} -z -C --file=ipynb_icon_24x24.svg --export-png=ipynb_icon_24x24_uncrush.png
${INKSCAPE} -z -C --file=ipynb_icon_32x32.svg --export-png=ipynb_icon_32x32_uncrush.png
${INKSCAPE} -z -C --file=ipynb_icon_512x512.svg --export-png=ipynb_icon_64x64_uncrush.png -w 64 -h 64
${INKSCAPE} -z -C --file=ipynb_icon_512x512.svg --export-png=ipynb_icon_128x128_uncrush.png -w 128 -h 128
${INKSCAPE} -z -C --file=ipynb_icon_512x512.svg --export-png=ipynb_icon_256x256_uncrush.png -w 256 -h 256
${INKSCAPE} -z -C --file=ipynb_icon_512x512.svg --export-png=ipynb_icon_512x512_uncrush.png -w 512 -h 512
for file in `ls *_uncrush.png`; do
pngcrush -brute -l 9 -reduce -rem alla -rem text -rem time -rem gAMA -rem cHRM -rem iCCP -rem sRGB $file `basename $file _uncrush.png`.png
rm $file
done
================================================
FILE: docs/source/_static/.gitkeep
================================================
================================================
FILE: docs/source/conf.py
================================================
# Jupyter Notebook documentation build configuration file, created by
# sphinx-quickstart on Mon Apr 13 09:51:11 2015.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.
import logging
import os
import shutil
import sys
logger = logging.getLogger(__name__)
logging.basicConfig()
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
# DEBUG for RTD
logger.info("DEBUG:: sys.path")
logger.info("================")
for item in sys.path:
logger.info(item)
# add repo root to sys.path
# here = root/docs/source
here = os.path.abspath(os.path.dirname(__file__))
repo_root = os.path.dirname(os.path.dirname(here))
sys.path.insert(0, repo_root)
# Copy the markdown file here
shutil.copy(os.path.join(repo_root, "CHANGELOG.md"), os.path.join(here, "changelog.md"))
# Copy the contributing file here
shutil.copy(os.path.join(repo_root, "CONTRIBUTING.md"), os.path.join(here, "contributing.md"))
logger.info("repo_root")
logger.info("=====================")
logger.info(repo_root)
# DEBUG for post insert on RTD
logger.info("DEBUG:: Post insert to sys.path")
logger.info("===============================")
for item in sys.path:
logger.info(item)
# -- General configuration ------------------------------------------------
# If your documentation needs a minimal Sphinx version, state it here.
# needs_sphinx = '1.0'
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
"sphinx.ext.autodoc",
"sphinx.ext.doctest",
"sphinx.ext.intersphinx",
"sphinx.ext.autosummary",
"sphinx.ext.mathjax",
"IPython.sphinxext.ipython_console_highlighting",
"nbsphinx",
"sphinxcontrib_github_alt",
"myst_parser",
]
try:
import enchant # noqa: F401
extensions += ["sphinxcontrib.spelling"]
except ImportError:
pass
myst_enable_extensions = ["html_image"]
myst_update_mathjax = False
# Add any paths that contain templates here, relative to this directory.
templates_path = ["_templates"]
# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
# source_suffix = ['.rst', '.md']
# The encoding of source files.
# source_encoding = 'utf-8-sig'
# The master toctree document.
master_doc = "index"
# General information about the project.
project = "Jupyter Notebook"
copyright = "2015, Jupyter Team, https://jupyter.org"
author = "The Jupyter Team"
# ghissue config
github_project_url = "https://github.com/jupyter/notebook"
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
_version_py = os.path.join(here, "../../notebook/_version.py")
version_ns = {}
exec(compile(open(_version_py).read(), _version_py, "exec"), version_ns) # noqa: S102, SIM115
# The short X.Y version.
version = "{}.{}".format(*version_ns["version_info"][:2])
# The full version, including alpha/beta/rc tags.
release = version_ns["__version__"]
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = "en"
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
# today = ''
# Else, today_fmt is used as the format for a strftime call.
# today_fmt = '%B %d, %Y'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = [
"examples/Notebook/.ipynb_checkpoints",
"examples/Notebook/nbpackage/*.ipynb",
"examples/Notebook/nbpackage/nbs/*.ipynb",
]
# The reST default role (used for this markup: `text`) to use for all
# documents.
# default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
# add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
# add_module_names = True
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
# show_authors = False
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = "sphinx"
# A list of ignored prefixes for module index sorting.
# modindex_common_prefix = []
# If true, keep warnings as "system message" paragraphs in the built documents.
# keep_warnings = False
# If true, `todo` and `todoList` produce output, else they produce nothing.
todo_include_todos = False
# -- Options for HTML output ----------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
html_theme = "pydata_sphinx_theme"
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
html_theme_options = {
"header_links_before_dropdown": 5,
"icon_links": [
{
"name": "jupyter.org",
"url": "https://jupyter.org",
"icon": "_static/jupyter_logo.svg",
"type": "local",
},
{
"name": "GitHub",
"url": "https://github.com/jupyter/notebook",
"icon": "fab fa-github-square",
},
{
"name": "Discourse",
"url": "https://discourse.jupyter.org/c/notebook/31",
"icon": "fab fa-discourse",
},
{
"name": "Zulip",
"url": "https://jupyter.zulipchat.com/",
"icon": "_static/zulip-icon-square.svg",
"type": "local",
},
],
"logo": {
"alt_text": "Jupyter",
"image_light": "_static/logo-rectangle.svg",
"image_dark": "_static/logo-rectangle-dark.svg",
},
"use_edit_page_button": True,
"navigation_with_keys": False,
}
# Output for github to be used in links
html_context = {
"github_user": "jupyter", # Username
"github_repo": "notebook", # Repo name
"github_version": "main", # Version
"doc_path": "docs/source/", # Path in the checkout to the docs root
}
# Add any paths that contain custom themes here, relative to this directory.
# html_theme_path = []
# The name for this set of Sphinx documents. If None, it defaults to
# " v documentation".
# html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
# html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
html_logo = "examples/images/jupyter_logo.png"
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
# html_favicon = None
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
# NOTE: Sphinx's 'make html' builder will throw a warning about an unfound
# _static directory. Do not remove or comment out html_static_path
# since it is needed to properly generate _static in the build directory
html_static_path = ["_static"]
# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
# html_extra_path = []
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
# html_last_updated_fmt = '%b %d, %Y'
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
# html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
# html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
# html_additional_pages = {}
# If false, no module index is generated.
# html_domain_indices = True
# If false, no index is generated.
# html_use_index = True
# If true, the index is split into individual pages for each letter.
# html_split_index = False
# If true, links to the reST sources are added to the pages.
# html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
# html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
# html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
# html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
# html_file_suffix = None
# Language to be used for generating the HTML full-text search index.
# Sphinx supports the following languages:
# 'da', 'de', 'en', 'es', 'fi', 'fr', 'h', 'it', 'ja'
# 'nl', 'no', 'pt', 'ro', 'r', 'sv', 'tr'
# html_search_language = 'en'
# A dictionary with options for the search language support, empty by default.
# Now only 'ja' uses this config value
# html_search_options = {'type': 'default'}
# The name of a javascript file (relative to the configuration directory) that
# implements a search results scorer. If empty, the default will be used.
# html_search_scorer = 'scorer.js'
# Output file base name for HTML help builder.
htmlhelp_basename = "JupyterNotebookdoc"
# This will ensure that we use the correctly set environment for canonical URLs
# Old Read the Docs injections makes it point only to the default version,
# for instance /en/stable/
html_baseurl = os.environ.get("READTHEDOCS_CANONICAL_URL", "/")
# -- Options for LaTeX output ---------------------------------------------
latex_elements = {}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(
master_doc,
"JupyterNotebook.tex",
"Jupyter Notebook Documentation",
"https://jupyter.org",
"manual",
),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
# latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
# latex_use_parts = False
# If true, show page references after internal links.
# latex_show_pagerefs = False
# If true, show URL addresses after external links.
# latex_show_urls = False
# Documents to append as an appendix to all manuals.
# latex_appendices = []
# If false, no module index is generated.
# latex_domain_indices = True
# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [(master_doc, "jupyternotebook", "Jupyter Notebook Documentation", [author], 1)]
# If true, show URL addresses after external links.
# man_show_urls = False
# -- Options for link checks ----------------------------------------------
linkcheck_ignore = [r"http://127\.0\.0\.1/*"]
# -- Options for Texinfo output -------------------------------------------
# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
(
master_doc,
"JupyterNotebook",
"Jupyter Notebook Documentation",
author,
"JupyterNotebook",
"One line description of project.",
"Miscellaneous",
),
]
# Documents to append as an appendix to all manuals.
# texinfo_appendices = []
# If false, no module index is generated.
# texinfo_domain_indices = True
# How to display URL addresses: 'footnote', 'no', or 'inline'.
# texinfo_show_urls = 'footnote'
# If true, do not generate a @detailmenu in the "Top" node's menu.
# texinfo_no_detailmenu = False
intersphinx_mapping = {
"ipython": ("https://ipython.readthedocs.io/en/stable/", None),
"nbconvert": ("https://nbconvert.readthedocs.io/en/latest/", None),
"nbformat": ("https://nbformat.readthedocs.io/en/latest/", None),
"jupyter": ("https://jupyter.readthedocs.io/en/latest/", None),
}
spelling_lang = "en_US"
spelling_word_list_filename = "spelling_wordlist.txt"
def setup(app):
app.add_css_file("https://docs.jupyter.org/en/latest/_static/jupyter.css")
================================================
FILE: docs/source/configuration.md
================================================
# Configuration
```{toctree}
:caption: Configuration
:maxdepth: 1
configuring/config_overview
Security
extending/index.rst
```
================================================
FILE: docs/source/configuring/config_overview.md
================================================
(configuration-overview)=
# Configuration Overview
Beyond the default configuration settings, you can configure a rich array of
options to suit your workflow. Here are areas that are commonly configured
when using Jupyter Notebook:
> - {ref}`Jupyter's common configuration system `
> - {ref}`Jupyter Server `
> - {ref}`Notebook extensions `
Let's look at highlights of each area.
(configure-common)=
## Jupyter's Common Configuration system
Jupyter applications, from the Notebook to JupyterHub to nbgrader, share a
common configuration system. The process for creating a configuration file
and editing settings is similar for all the Jupyter applications.
> - [Jupyter’s Common Configuration Approach](https://jupyter.readthedocs.io/en/latest/use/config.html)
> - [Common Directories and File Locations](https://jupyter.readthedocs.io/en/latest/use/jupyter-directories.html)
> - [Language kernels](https://jupyter.readthedocs.io/en/latest/projects/kernels.html)
> - [traitlets](https://traitlets.readthedocs.io/en/latest/config.html#module-traitlets.config)
> provide a low-level architecture for configuration.
### Disabling Custom CSS
Custom CSS is loaded by default as was done with Jupyter Notebook 6. In the jupyter configuration directory, the `/.jupyter/custom/custom.css` file will be loaded unless the the application is initialized with the `custom_css` flag with the argument set to `False` as in `--JupyterNotebookApp.custom_css=False`.
(configure-jupyter-server)=
## Jupyter server
The Jupyter Server runs the language kernel and communicates with the
front-end Notebook client (i.e. the familiar notebook interface).
> - Configuring the Jupyter Server
>
> > To create a `jupyter_server_config.py` file in the `.jupyter`
> > directory, with all the defaults commented out, use the following
> > command:
> >
> > ```
> > $ jupyter server --generate-config
> > ```
>
> - [Running a Jupyter Server](https://jupyter-server.readthedocs.io/en/stable/operators/public-server.html)
>
> - Related: [Configuring a language kernel](https://ipython.readthedocs.io/en/latest/install/kernel_install.html)
> to run in the Jupyter Server enables your server to run other languages, like R or Julia.
```{warning}
Jupyter Notebook 7 is now based on Jupyter Server. This may break some previous `notebook` imports you may have been using, such as `notebook.auth` or `notebook.notebookapp`.
Check out the [migration guide](../migrating/server-imports.md) to learn more on how to update these server imports.
```
(configure-nbextensions)=
## Notebook extensions
The Notebook frontend can be extending with JupyterLab extensions.
See the {ref}`Frontend Extension Guide ` for more information.
[Security in Jupyter notebooks:](https://jupyter-server.readthedocs.io/en/stable/operators/security.html)
Since security policies vary from organization to organization, we encourage you to
consult with your security team on settings that would be best for your use
cases. Our documentation offers some responsible security practices, and we
recommend becoming familiar with the practices.
================================================
FILE: docs/source/configuring/interface_customization.md
================================================
# Interface Customization
Multiple elements in the Notebook interface can be customized via the Settings Editor.
## Layout
By default some widgets are displayed in pre-defined parts of the user interface, which are often called "areas" or "regions".
For example the table of contents will be displayed in the `left` area by default, while the debugger will be displayed in the `right` area.
However the positioning of some of these components can also be customized via the Settings Editor. Below are a few examples of how to do this.
### Open the Markdown Preview on the left
It is often useful to be able to see a rendered preview of a Markdown document while editing it.
By default the Markdown Preview opens on the right side of the application. However it is also possible to open it on the left side by changing the Notebook Shell settings in the Advanced Settings Editor:
```json
{
"layout": {
"Markdown Preview": {
"area": "left"
}
}
}
```

### Configuring a third-party widget
Third-party extensions can also add widgets to the application shell. This is for example the case with the [Voila extension](https://github.com/voila-dashboards/voila), which adds a preview widget to visualize a notebook as a dashboard.
By default in JupyterLab the Voila Preview is added to the `main` area next to the corresponding notebook. With Notebook 7 it is possible to move the Voila Preview to the `right` area by changing the Notebook Shell setting in the Advanced Settings Editor as follows:
```json
{
"layout": {
"Voila Preview": {
"area": "right"
}
}
}
```

```{note}
Refer to the [JupyterLab Layout Documentation](https://jupyterlab.readthedocs.io/en/latest/user/interface_customization.html#layout)
to learn more about the default positioning of other UI elements.
```
## Toolbars, Menu bar and Context Menu
It is also possible to customize toolbars, menus and context menu entries via the Settings Editor.
For example the items of the notebook toolbar can be reordered, or some menu entries can be hidden.
```{note}
Refer to the [JupyterLab Documentation](https://jupyterlab.readthedocs.io/en/latest/user/interface_customization.html)
to learn more about general interface customization via the settings editor.
```
================================================
FILE: docs/source/configuring/plugins.md
================================================
# Managing plugins
Notebook 7 uses the same extension system as JupyterLab. An extension can provide multiple plugins.
```{note}
See the [JupyterLab documentation](https://jupyterlab.readthedocs.io/en/latest/user/extensions.html) to learn more about the extension system.
```
## Examples
### Disabling the download button
By default Notebook 7 provides a way to download files from the file browser. This functionality consists of a context menu entry and a main menu entry. They are provided by an application plugin that can be disabled.
To disable the download entry of file browser context menus, open a terminal and run the following command:
```text
jupyter labextension disable @jupyterlab/filebrowser-extension:download
```
Then restart the application and refresh the page.
================================================
FILE: docs/source/contributor.md
================================================
# Contributing
```{toctree}
:caption: Contributor Documentation
:maxdepth: 1
contributing
development_faq
```
================================================
FILE: docs/source/custom_css.md
================================================
# Applying Custom CSS
To apply custom CSS, you can add a `/custom/custom.css` file in the jupyter `config` directory. You can find the path, `~/.jupyter`, to this directory by running `jupyter --paths`. There you can create a folder named `custom` and create a `custom.css` file within the folder.
## Jupyter Styling
You can use a custom CSS file to modify default Jupyter styling.
```css
/* Modify Jupyter Styles */
#top-panel-wrapper,
#jp-top-bar {
background-color: #aecad4 !important;
}
#menu-panel-wrapper,
#jp-MainMenu,
#menu-panel {
background-color: #aecad4 !important;
}
.jp-NotebookPanel-toolbar {
background-color: #aecad4 !important;
}
.lm-MenuBar-content {
color: #02484d;
}
```

## Markdown
Another potential application for custom CSS is styling markdown.
```css
/* Headings */
h1,
h2 {
font-family: Impact, Charcoal, sans-serif;
font-weight: bold;
text-shadow: 2px 2px 4px #000000;
}
h1 {
font-size: 52px;
margin-bottom: 40px;
color: #10929e;
text-decoration: underline;
}
h2 {
font-size: 448px;
margin-bottom: 32px;
color: #76b4be;
text-transform: uppercase;
}
/* Block Quotes */
blockquote {
font-family: Georgia, serif;
font-size: 16px;
color: #19085c;
border-left: 8px solid #effffc;
background-color: #eafcff;
padding: 20px;
}
/* Lists */
ul,
ol {
font-family: Verdana, Geneva, sans-serif;
font-size: 18px;
color: #333333;
margin-bottom: 24px;
}
```

================================================
FILE: docs/source/development_faq.md
================================================
(development-faq)=
# Developer FAQ
1. How do I install a prerelease version such as a beta or release candidate?
You can install a prerelease version of the notebook using the `--pre` flag with `pip`:
```bash
python -m pip install notebook --pre --upgrade
```
If you are using `conda` or `mamba`, you can install a prerelease version of the notebook using the alpha or beta label. For example, to install the latest alpha release, you can run:
```bash
conda install -c conda-forge -c conda-forge/label/notebook_alpha notebook=7.0.0a18
```
================================================
FILE: docs/source/examples/Notebook/Connecting with the Qt Console.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Connecting to an existing IPython kernel using the Qt Console"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The Frontend/Kernel Model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The traditional IPython (`ipython`) consists of a single process that combines a terminal based UI with the process that runs the users code.\n",
"\n",
"While this traditional application still exists, the modern Jupyter consists of two processes:\n",
"\n",
"* Kernel: this is the process that runs the users code.\n",
"* Frontend: this is the process that provides the user interface where the user types code and sees results.\n",
"\n",
"Jupyter currently has 3 frontends:\n",
"\n",
"* Terminal Console (`jupyter console`)\n",
"* Qt Console (`jupyter qtconsole`)\n",
"* Notebook (`jupyter notebook`)\n",
"\n",
"The Kernel and Frontend communicate over a ZeroMQ/JSON based messaging protocol, which allows multiple Frontends (even of different types) to communicate with a single Kernel. This opens the door for all sorts of interesting things, such as connecting a Console or Qt Console to a Notebook's Kernel. For example, you may want to connect a Qt console to your Notebook's Kernel and use it as a help\n",
"browser, calling `??` on objects in the Qt console (whose pager is more flexible than the\n",
"one in the notebook). \n",
"\n",
"This Notebook describes how you would connect another Frontend to an IPython Kernel that is associated with a Notebook.\n",
"The commands currently given here are specific to the IPython kernel."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Manual connection"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To connect another Frontend to a Kernel manually, you first need to find out the connection information for the Kernel using the `%connect_info` magic:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"%connect_info"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can see that this magic displays everything you need to connect to this Notebook's Kernel."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Automatic connection using a new Qt Console"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can also start a new Qt Console connected to your current Kernel by using the `%qtconsole` magic. This will detect the necessary connection\n",
"information and start the Qt Console for you automatically."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"a = 10"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"%qtconsole"
]
}
],
"metadata": {
"nbsphinx": {
"execute": "never"
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.2"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
================================================
FILE: docs/source/examples/Notebook/Custom Keyboard Shortcuts.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Keyboard Shortcut Customization"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can customize the `command` mode shortcuts from within the Notebook Application itself. \n",
"\n",
"Head to the **Settings** menu and select the **Settings Editor** item.\n",
"A dialog will guide you through the process of adding custom keyboard shortcuts.\n",
"\n",
"Keyboard shortcut set from within the Notebook Application will be persisted to your configuration file. \n",
"A single action may have several shortcuts attached to it."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.2"
},
"nbsphinx": {
"execute": "never"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
================================================
FILE: docs/source/examples/Notebook/Importing Notebooks.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Importing Jupyter Notebooks as Modules"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It is a common problem that people want to import code from Jupyter Notebooks.\n",
"This is made difficult by the fact that Notebooks are not plain Python files,\n",
"and thus cannot be imported by the regular Python machinery.\n",
"\n",
"Fortunately, Python provides some fairly sophisticated [hooks](https://www.python.org/dev/peps/pep-0302/) into the import machinery,\n",
"so we can actually make Jupyter notebooks importable without much difficulty,\n",
"and only using public APIs."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import io, os, sys, types"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from IPython import get_ipython\n",
"from nbformat import read\n",
"from IPython.core.interactiveshell import InteractiveShell"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Import hooks typically take the form of two objects:\n",
"\n",
"1. a Module **Loader**, which takes a module name (e.g. `'IPython.display'`), and returns a Module\n",
"2. a Module **Finder**, which figures out whether a module might exist, and tells Python what **Loader** to use"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"def find_notebook(fullname, path=None):\n",
" \"\"\"find a notebook, given its fully qualified name and an optional path\n",
"\n",
" This turns \"foo.bar\" into \"foo/bar.ipynb\"\n",
" and tries turning \"Foo_Bar\" into \"Foo Bar\" if Foo_Bar\n",
" does not exist.\n",
" \"\"\"\n",
" name = fullname.rsplit('.', 1)[-1]\n",
" if not path:\n",
" path = ['']\n",
" for d in path:\n",
" nb_path = os.path.join(d, name + \".ipynb\")\n",
" if os.path.isfile(nb_path):\n",
" return nb_path\n",
" # let import Notebook_Name find \"Notebook Name.ipynb\"\n",
" nb_path = nb_path.replace(\"_\", \" \")\n",
" if os.path.isfile(nb_path):\n",
" return nb_path"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Notebook Loader"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we have our Notebook Loader.\n",
"It's actually quite simple - once we figure out the filename of the module,\n",
"all it does is:\n",
"\n",
"1. load the notebook document into memory\n",
"2. create an empty Module\n",
"3. execute every cell in the Module namespace\n",
"\n",
"Since IPython cells can have extended syntax,\n",
"the IPython transform is applied to turn each of these cells into their pure-Python counterparts before executing them.\n",
"If all of your notebook cells are pure-Python,\n",
"this step is unnecessary."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"class NotebookLoader(object):\n",
" \"\"\"Module Loader for Jupyter Notebooks\"\"\"\n",
"\n",
" def __init__(self, path=None):\n",
" self.shell = InteractiveShell.instance()\n",
" self.path = path\n",
"\n",
" def load_module(self, fullname):\n",
" \"\"\"import a notebook as a module\"\"\"\n",
" path = find_notebook(fullname, self.path)\n",
"\n",
" print(\"importing Jupyter notebook from %s\" % path)\n",
"\n",
" # load the notebook object\n",
" with io.open(path, 'r', encoding='utf-8') as f:\n",
" nb = read(f, 4)\n",
"\n",
" # create the module and add it to sys.modules\n",
" # if name in sys.modules:\n",
" # return sys.modules[name]\n",
" mod = types.ModuleType(fullname)\n",
" mod.__file__ = path\n",
" mod.__loader__ = self\n",
" mod.__dict__['get_ipython'] = get_ipython\n",
" sys.modules[fullname] = mod\n",
"\n",
" # extra work to ensure that magics that would affect the user_ns\n",
" # actually affect the notebook module's ns\n",
" save_user_ns = self.shell.user_ns\n",
" self.shell.user_ns = mod.__dict__\n",
"\n",
" try:\n",
" for cell in nb.cells:\n",
" if cell.cell_type == 'code':\n",
" # transform the input to executable Python\n",
" code = self.shell.input_transformer_manager.transform_cell(cell.source)\n",
" # run the code in themodule\n",
" exec(code, mod.__dict__)\n",
" finally:\n",
" self.shell.user_ns = save_user_ns\n",
" return mod"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The Module Finder"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The finder is a simple object that tells you whether a name can be imported,\n",
"and returns the appropriate loader.\n",
"All this one does is check, when you do:\n",
"\n",
"```python\n",
"import mynotebook\n",
"```\n",
"\n",
"it checks whether `mynotebook.ipynb` exists.\n",
"If a notebook is found, then it returns a NotebookLoader.\n",
"\n",
"Any extra logic is just for resolving paths within packages."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"class NotebookFinder(object):\n",
" \"\"\"Module finder that locates Jupyter Notebooks\"\"\"\n",
"\n",
" def __init__(self):\n",
" self.loaders = {}\n",
"\n",
" def find_module(self, fullname, path=None):\n",
" nb_path = find_notebook(fullname, path)\n",
" if not nb_path:\n",
" return\n",
"\n",
" key = path\n",
" if path:\n",
" # lists aren't hashable\n",
" key = os.path.sep.join(path)\n",
"\n",
" if key not in self.loaders:\n",
" self.loaders[key] = NotebookLoader(path)\n",
" return self.loaders[key]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Register the hook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now we register the `NotebookFinder` with `sys.meta_path`"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"sys.meta_path.append(NotebookFinder())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"After this point, my notebooks should be importable.\n",
"\n",
"Let's look at what we have in the CWD:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"ls nbpackage"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So I should be able to `import nbpackage.mynotebook`."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import nbpackage.mynotebook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Aside: displaying notebooks"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here is some simple code to display the contents of a notebook\n",
"with syntax highlighting, etc."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from pygments import highlight\n",
"from pygments.lexers import PythonLexer\n",
"from pygments.formatters import HtmlFormatter\n",
"\n",
"from IPython.display import display, HTML\n",
"\n",
"formatter = HtmlFormatter()\n",
"lexer = PythonLexer()\n",
"\n",
"# publish the CSS for pygments highlighting\n",
"display(\n",
" HTML(\n",
" \"\"\"\n",
"\n",
"\"\"\"\n",
" % formatter.get_style_defs()\n",
" )\n",
")"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"def show_notebook(fname):\n",
" \"\"\"display a short summary of the cells of a notebook\"\"\"\n",
" with io.open(fname, 'r', encoding='utf-8') as f:\n",
" nb = read(f, 4)\n",
" html = []\n",
" for cell in nb.cells:\n",
" html.append(\"
\" % cell.source)\n",
" display(HTML('\\n'.join(html)))\n",
"\n",
"\n",
"show_notebook(os.path.join(\"nbpackage\", \"mynotebook.ipynb\"))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So my notebook has some code cells,\n",
"one of which contains some IPython syntax.\n",
"\n",
"Let's see what happens when we import it"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from nbpackage import mynotebook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Hooray, it imported! Does it work?"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"mynotebook.foo()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Hooray again!\n",
"\n",
"Even the function that contains IPython syntax works:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"mynotebook.has_ip_syntax()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Notebooks in packages"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We also have a notebook inside the `nb` package,\n",
"so let's make sure that works as well."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"ls nbpackage/nbs"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that the `__init__.py` is necessary for `nb` to be considered a package,\n",
"just like usual."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"show_notebook(os.path.join(\"nbpackage\", \"nbs\", \"other.ipynb\"))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from nbpackage.nbs import other\n",
"\n",
"other.bar(5)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So now we have importable notebooks, from both the local directory and inside packages.\n",
"\n",
"I can even put a notebook inside IPython, to further demonstrate that this is working properly:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import shutil\n",
"from IPython.paths import get_ipython_package_dir\n",
"\n",
"utils = os.path.join(get_ipython_package_dir(), 'utils')\n",
"shutil.copy(\n",
" os.path.join(\"nbpackage\", \"mynotebook.ipynb\"), os.path.join(utils, \"inside_ipython.ipynb\")\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"and import the notebook from `IPython.utils`"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"from IPython.utils import inside_ipython\n",
"\n",
"inside_ipython.whatsmyname()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This approach can even import functions and classes that are defined in a notebook using the `%%cython` magic."
]
}
],
"metadata": {
"gist_id": "6011986",
"nbsphinx": {
"execute": "never"
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.1+"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
================================================
FILE: docs/source/examples/Notebook/Notebook Basics.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Notebook Basics"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The Notebook dashboard"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"When you first start the notebook server, your browser will open to the notebook dashboard. The dashboard serves as a home page for the notebook. Its main purpose is to display the notebooks and files in the current directory. For example, here is a screenshot of the dashboard page for the `examples` directory in the Jupyter repository:\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The top of the notebook list displays clickable breadcrumbs of the current directory. By clicking on these breadcrumbs or on sub-directories in the notebook list, you can navigate your file system.\n",
"\n",
"To create a new notebook, click on the \"New\" button at the top of the list and select a kernel from the dropdown (as seen below). Which kernels are listed depend on what's installed on the server. Some of the kernels in the screenshot below may not exist as an option to you.\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notebooks and files can be uploaded to the current directory by dragging a notebook file onto the notebook list or by the \"click here\" text above the list.\n",
"\n",
"The notebook list shows green \"Running\" text and a green notebook icon next to running notebooks (as seen below). Notebooks remain running until you explicitly shut them down; closing the notebook's page is not sufficient.\n",
"\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To shutdown, delete, duplicate, or rename a notebook check the checkbox next to it and an array of controls will appear at the top of the notebook list (as seen below). You can also use the same operations on directories and files when applicable.\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To see all of your running notebooks along with their directories, click on the \"Running\" tab:\n",
"\n",
"\n",
"\n",
"This view provides a convenient way to track notebooks that you start as you navigate the file system in a long running notebook server."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Overview of the Notebook UI"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"If you create a new notebook or open an existing one, you will be taken to the notebook user interface (UI). This UI allows you to run code and author notebook documents interactively. The notebook UI has the following main areas:\n",
"\n",
"* Menu\n",
"* Toolbar\n",
"* Notebook area and cells\n",
"\n",
"The notebook has an interactive tour of these elements that can be started in the \"Help:User Interface Tour\" menu item."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Modal editor"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Starting with IPython 2.0, the Jupyter Notebook has a modal user interface. This means that the keyboard does different things depending on which mode the Notebook is in. There are two modes: edit mode and command mode."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Edit mode"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Edit mode is indicated by a green cell border and a prompt showing in the editor area:\n",
"\n",
"\n",
"\n",
"When a cell is in edit mode, you can type into the cell, like a normal text editor."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"
\n",
"Enter edit mode by pressing `Enter` or using the mouse to click on a cell's editor area.\n",
"
"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Command mode"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Command mode is indicated by a grey cell border with a blue left margin:\n",
"\n",
"\n",
"\n",
"When you are in command mode, you are able to edit the notebook as a whole, but not type into individual cells. Most importantly, in command mode, the keyboard is mapped to a set of shortcuts that let you perform notebook and cell actions efficiently. For example, if you are in command mode and you press `c`, you will copy the current cell - no modifier is needed."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"
\n",
"Don't try to type into a cell in command mode; unexpected things will happen!\n",
"
\n",
"Enter command mode by pressing `Esc` or using the mouse to click *outside* a cell's editor area.\n",
"
"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Mouse navigation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"All navigation and actions in the Notebook are available using the mouse through the menubar and toolbar, which are both above the main Notebook area:\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The first idea of mouse based navigation is that **cells can be selected by clicking on them.** The currently selected cell gets a grey or green border depending on whether the notebook is in edit or command mode. If you click inside a cell's editor area, you will enter edit mode. If you click on the prompt or output area of a cell you will enter command mode.\n",
"\n",
"If you are running this notebook in a live session (not on https://nbviewer.jupyter.org) try selecting different cells and going between edit and command mode. Try typing into a cell."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The second idea of mouse based navigation is that **cell actions usually apply to the currently selected cell**. Thus if you want to run the code in a cell, you would select it and click the button in the toolbar or the \"Cell:Run\" menu item. Similarly, to copy a cell you would select it and click the button in the toolbar or the \"Edit:Copy\" menu item. With this simple pattern, you should be able to do most everything you need with the mouse.\n",
"\n",
"Markdown cells have one other state that can be modified with the mouse. These cells can either be rendered or unrendered. When they are rendered, you will see a nice formatted representation of the cell's contents. When they are unrendered, you will see the raw text source of the cell. To render the selected cell with the mouse, click the button in the toolbar or the \"Cell:Run\" menu item. To unrender the selected cell, double click on the cell."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Keyboard Navigation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The modal user interface of the Jupyter Notebook has been optimized for efficient keyboard usage. This is made possible by having two different sets of keyboard shortcuts: one set that is active in edit mode and another in command mode.\n",
"\n",
"The most important keyboard shortcuts are `Enter`, which enters edit mode, and `Esc`, which enters command mode.\n",
"\n",
"In edit mode, most of the keyboard is dedicated to typing into the cell's editor. Thus, in edit mode there are relatively few shortcuts. In command mode, the entire keyboard is available for shortcuts, so there are many more. The `Help`->`Keyboard Shortcuts` dialog lists the available shortcuts."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We recommend learning the command mode shortcuts in the following rough order:\n",
"\n",
"1. Basic navigation: `enter`, `shift-enter`, `up/k`, `down/j`\n",
"2. Saving the notebook: `s`\n",
"2. Change Cell types: `y`, `m`, `1-6`, `t`\n",
"3. Cell creation: `a`, `b`\n",
"4. Cell editing: `x`, `c`, `v`, `d`, `z`\n",
"5. Kernel operations: `i`, `0` (press twice)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.2"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
================================================
FILE: docs/source/examples/Notebook/Running Code.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Running Code"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"First and foremost, the Jupyter Notebook is an interactive environment for writing and running code. The notebook is capable of running code in a wide range of languages. However, each notebook is associated with a single kernel. This notebook is associated with the IPython kernel, therefore runs Python code."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Code cells allow you to enter and run code"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Run a code cell using `Shift-Enter` or pressing the button in the toolbar above:"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"a = 10"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"10\n"
]
}
],
"source": [
"print(a)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"There are two other keyboard shortcuts for running code:\n",
"\n",
"* `Alt-Enter` runs the current cell and inserts a new one below.\n",
"* `Ctrl-Enter` run the current cell and enters command mode."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Managing the Kernel"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Code is run in a separate process called the Kernel. The Kernel can be interrupted or restarted. Try running the following cell and then hit the button in the toolbar above."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"import time\n",
"\n",
"time.sleep(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"If the Kernel dies you will be prompted to restart it. Here we call the low-level system libc.time routine with the wrong argument via\n",
"ctypes to segfault the Python interpreter:"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"import sys\n",
"\n",
"# This will crash a Linux or Mac system\n",
"# equivalent calls can be made on Windows\n",
"\n",
"# Uncomment these lines if you would like to see the segfault\n",
"\n",
"# dll = 'dylib' if sys.platform == 'darwin' else 'so.6'\n",
"# libc = CDLL(\"libc.%s\" % dll)\n",
"# libc.time(-1) # BOOM!!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Cell menu"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The \"Cell\" menu has a number of menu items for running code in different ways. These includes:\n",
"\n",
"* Run and Select Below\n",
"* Run and Insert Below\n",
"* Run All\n",
"* Run All Above\n",
"* Run All Below"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Restarting the kernels"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The kernel maintains the state of a notebook's computations. You can reset this state by restarting the kernel. This is done by clicking on the in the toolbar above."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## sys.stdout and sys.stderr"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The stdout and stderr streams are displayed as text in the output area."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"hi, stdout\n"
]
}
],
"source": [
"print(\"hi, stdout\")"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"hi, stderr\n"
]
}
],
"source": [
"print(\"hi, stderr\", file=sys.stderr)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Output is asynchronous"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"All output is displayed asynchronously as it is generated in the Kernel. If you execute the next cell, you will see the output one piece at a time, not all at the end."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0\n",
"1\n",
"2\n",
"3\n",
"4\n",
"5\n",
"6\n",
"7\n"
]
}
],
"source": [
"import sys\n",
"import time\n",
"\n",
"for i in range(8):\n",
" print(i)\n",
" time.sleep(0.5)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Large outputs"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To better handle large outputs, the output area can be collapsed. Run the following cell and then single- or double- click on the active area to the left of the output:"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0\n",
"1\n",
"2\n",
"3\n",
"4\n",
"5\n",
"6\n",
"7\n",
"8\n",
"9\n",
"10\n",
"11\n",
"12\n",
"13\n",
"14\n",
"15\n",
"16\n",
"17\n",
"18\n",
"19\n",
"20\n",
"21\n",
"22\n",
"23\n",
"24\n",
"25\n",
"26\n",
"27\n",
"28\n",
"29\n",
"30\n",
"31\n",
"32\n",
"33\n",
"34\n",
"35\n",
"36\n",
"37\n",
"38\n",
"39\n",
"40\n",
"41\n",
"42\n",
"43\n",
"44\n",
"45\n",
"46\n",
"47\n",
"48\n",
"49\n"
]
}
],
"source": [
"for i in range(50):\n",
" print(i)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Beyond a certain point, output will scroll automatically:"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0\n",
"1\n",
"3\n",
"7\n",
"15\n",
"31\n",
"63\n",
"127\n",
"255\n",
"511\n",
"1023\n",
"2047\n",
"4095\n",
"8191\n",
"16383\n",
"32767\n",
"65535\n",
"131071\n",
"262143\n",
"524287\n",
"1048575\n",
"2097151\n",
"4194303\n",
"8388607\n",
"16777215\n",
"33554431\n",
"67108863\n",
"134217727\n",
"268435455\n",
"536870911\n",
"1073741823\n",
"2147483647\n",
"4294967295\n",
"8589934591\n",
"17179869183\n",
"34359738367\n",
"68719476735\n",
"137438953471\n",
"274877906943\n",
"549755813887\n",
"1099511627775\n",
"2199023255551\n",
"4398046511103\n",
"8796093022207\n",
"17592186044415\n",
"35184372088831\n",
"70368744177663\n",
"140737488355327\n",
"281474976710655\n",
"562949953421311\n",
"1125899906842623\n",
"2251799813685247\n",
"4503599627370495\n",
"9007199254740991\n",
"18014398509481983\n",
"36028797018963967\n",
"72057594037927935\n",
"144115188075855871\n",
"288230376151711743\n",
"576460752303423487\n",
"1152921504606846975\n",
"2305843009213693951\n",
"4611686018427387903\n",
"9223372036854775807\n",
"18446744073709551615\n",
"36893488147419103231\n",
"73786976294838206463\n",
"147573952589676412927\n",
"295147905179352825855\n",
"590295810358705651711\n",
"1180591620717411303423\n",
"2361183241434822606847\n",
"4722366482869645213695\n",
"9444732965739290427391\n",
"18889465931478580854783\n",
"37778931862957161709567\n",
"75557863725914323419135\n",
"151115727451828646838271\n",
"302231454903657293676543\n",
"604462909807314587353087\n",
"1208925819614629174706175\n",
"2417851639229258349412351\n",
"4835703278458516698824703\n",
"9671406556917033397649407\n",
"19342813113834066795298815\n",
"38685626227668133590597631\n",
"77371252455336267181195263\n",
"154742504910672534362390527\n",
"309485009821345068724781055\n",
"618970019642690137449562111\n",
"1237940039285380274899124223\n",
"2475880078570760549798248447\n",
"4951760157141521099596496895\n",
"9903520314283042199192993791\n",
"19807040628566084398385987583\n",
"39614081257132168796771975167\n",
"79228162514264337593543950335\n",
"158456325028528675187087900671\n",
"316912650057057350374175801343\n",
"633825300114114700748351602687\n",
"1267650600228229401496703205375\n",
"2535301200456458802993406410751\n",
"5070602400912917605986812821503\n",
"10141204801825835211973625643007\n",
"20282409603651670423947251286015\n",
"40564819207303340847894502572031\n",
"81129638414606681695789005144063\n",
"162259276829213363391578010288127\n",
"324518553658426726783156020576255\n",
"649037107316853453566312041152511\n",
"1298074214633706907132624082305023\n",
"2596148429267413814265248164610047\n",
"5192296858534827628530496329220095\n",
"10384593717069655257060992658440191\n",
"20769187434139310514121985316880383\n",
"41538374868278621028243970633760767\n",
"83076749736557242056487941267521535\n",
"166153499473114484112975882535043071\n",
"332306998946228968225951765070086143\n",
"664613997892457936451903530140172287\n",
"1329227995784915872903807060280344575\n",
"2658455991569831745807614120560689151\n",
"5316911983139663491615228241121378303\n",
"10633823966279326983230456482242756607\n",
"21267647932558653966460912964485513215\n",
"42535295865117307932921825928971026431\n",
"85070591730234615865843651857942052863\n",
"170141183460469231731687303715884105727\n",
"340282366920938463463374607431768211455\n",
"680564733841876926926749214863536422911\n",
"1361129467683753853853498429727072845823\n",
"2722258935367507707706996859454145691647\n",
"5444517870735015415413993718908291383295\n",
"10889035741470030830827987437816582766591\n",
"21778071482940061661655974875633165533183\n",
"43556142965880123323311949751266331066367\n",
"87112285931760246646623899502532662132735\n",
"174224571863520493293247799005065324265471\n",
"348449143727040986586495598010130648530943\n",
"696898287454081973172991196020261297061887\n",
"1393796574908163946345982392040522594123775\n",
"2787593149816327892691964784081045188247551\n",
"5575186299632655785383929568162090376495103\n",
"11150372599265311570767859136324180752990207\n",
"22300745198530623141535718272648361505980415\n",
"44601490397061246283071436545296723011960831\n",
"89202980794122492566142873090593446023921663\n",
"178405961588244985132285746181186892047843327\n",
"356811923176489970264571492362373784095686655\n",
"713623846352979940529142984724747568191373311\n",
"1427247692705959881058285969449495136382746623\n",
"2854495385411919762116571938898990272765493247\n",
"5708990770823839524233143877797980545530986495\n",
"11417981541647679048466287755595961091061972991\n",
"22835963083295358096932575511191922182123945983\n",
"45671926166590716193865151022383844364247891967\n",
"91343852333181432387730302044767688728495783935\n",
"182687704666362864775460604089535377456991567871\n",
"365375409332725729550921208179070754913983135743\n",
"730750818665451459101842416358141509827966271487\n",
"1461501637330902918203684832716283019655932542975\n",
"2923003274661805836407369665432566039311865085951\n",
"5846006549323611672814739330865132078623730171903\n",
"11692013098647223345629478661730264157247460343807\n",
"23384026197294446691258957323460528314494920687615\n",
"46768052394588893382517914646921056628989841375231\n",
"93536104789177786765035829293842113257979682750463\n",
"187072209578355573530071658587684226515959365500927\n",
"374144419156711147060143317175368453031918731001855\n",
"748288838313422294120286634350736906063837462003711\n",
"1496577676626844588240573268701473812127674924007423\n",
"2993155353253689176481146537402947624255349848014847\n",
"5986310706507378352962293074805895248510699696029695\n",
"11972621413014756705924586149611790497021399392059391\n",
"23945242826029513411849172299223580994042798784118783\n",
"47890485652059026823698344598447161988085597568237567\n",
"95780971304118053647396689196894323976171195136475135\n",
"191561942608236107294793378393788647952342390272950271\n",
"383123885216472214589586756787577295904684780545900543\n",
"766247770432944429179173513575154591809369561091801087\n",
"1532495540865888858358347027150309183618739122183602175\n",
"3064991081731777716716694054300618367237478244367204351\n",
"6129982163463555433433388108601236734474956488734408703\n",
"12259964326927110866866776217202473468949912977468817407\n",
"24519928653854221733733552434404946937899825954937634815\n",
"49039857307708443467467104868809893875799651909875269631\n",
"98079714615416886934934209737619787751599303819750539263\n",
"196159429230833773869868419475239575503198607639501078527\n",
"392318858461667547739736838950479151006397215279002157055\n",
"784637716923335095479473677900958302012794430558004314111\n",
"1569275433846670190958947355801916604025588861116008628223\n",
"3138550867693340381917894711603833208051177722232017256447\n",
"6277101735386680763835789423207666416102355444464034512895\n",
"12554203470773361527671578846415332832204710888928069025791\n",
"25108406941546723055343157692830665664409421777856138051583\n",
"50216813883093446110686315385661331328818843555712276103167\n",
"100433627766186892221372630771322662657637687111424552206335\n",
"200867255532373784442745261542645325315275374222849104412671\n",
"401734511064747568885490523085290650630550748445698208825343\n",
"803469022129495137770981046170581301261101496891396417650687\n",
"1606938044258990275541962092341162602522202993782792835301375\n",
"3213876088517980551083924184682325205044405987565585670602751\n",
"6427752177035961102167848369364650410088811975131171341205503\n",
"12855504354071922204335696738729300820177623950262342682411007\n",
"25711008708143844408671393477458601640355247900524685364822015\n",
"51422017416287688817342786954917203280710495801049370729644031\n",
"102844034832575377634685573909834406561420991602098741459288063\n",
"205688069665150755269371147819668813122841983204197482918576127\n",
"411376139330301510538742295639337626245683966408394965837152255\n",
"822752278660603021077484591278675252491367932816789931674304511\n",
"1645504557321206042154969182557350504982735865633579863348609023\n",
"3291009114642412084309938365114701009965471731267159726697218047\n",
"6582018229284824168619876730229402019930943462534319453394436095\n",
"13164036458569648337239753460458804039861886925068638906788872191\n",
"26328072917139296674479506920917608079723773850137277813577744383\n",
"52656145834278593348959013841835216159447547700274555627155488767\n",
"105312291668557186697918027683670432318895095400549111254310977535\n",
"210624583337114373395836055367340864637790190801098222508621955071\n",
"421249166674228746791672110734681729275580381602196445017243910143\n",
"842498333348457493583344221469363458551160763204392890034487820287\n",
"1684996666696914987166688442938726917102321526408785780068975640575\n",
"3369993333393829974333376885877453834204643052817571560137951281151\n",
"6739986666787659948666753771754907668409286105635143120275902562303\n",
"13479973333575319897333507543509815336818572211270286240551805124607\n",
"26959946667150639794667015087019630673637144422540572481103610249215\n",
"53919893334301279589334030174039261347274288845081144962207220498431\n",
"107839786668602559178668060348078522694548577690162289924414440996863\n",
"215679573337205118357336120696157045389097155380324579848828881993727\n",
"431359146674410236714672241392314090778194310760649159697657763987455\n",
"862718293348820473429344482784628181556388621521298319395315527974911\n",
"1725436586697640946858688965569256363112777243042596638790631055949823\n",
"3450873173395281893717377931138512726225554486085193277581262111899647\n",
"6901746346790563787434755862277025452451108972170386555162524223799295\n",
"13803492693581127574869511724554050904902217944340773110325048447598591\n",
"27606985387162255149739023449108101809804435888681546220650096895197183\n",
"55213970774324510299478046898216203619608871777363092441300193790394367\n",
"110427941548649020598956093796432407239217743554726184882600387580788735\n",
"220855883097298041197912187592864814478435487109452369765200775161577471\n",
"441711766194596082395824375185729628956870974218904739530401550323154943\n",
"883423532389192164791648750371459257913741948437809479060803100646309887\n",
"1766847064778384329583297500742918515827483896875618958121606201292619775\n",
"3533694129556768659166595001485837031654967793751237916243212402585239551\n",
"7067388259113537318333190002971674063309935587502475832486424805170479103\n",
"14134776518227074636666380005943348126619871175004951664972849610340958207\n",
"28269553036454149273332760011886696253239742350009903329945699220681916415\n",
"56539106072908298546665520023773392506479484700019806659891398441363832831\n",
"113078212145816597093331040047546785012958969400039613319782796882727665663\n",
"226156424291633194186662080095093570025917938800079226639565593765455331327\n",
"452312848583266388373324160190187140051835877600158453279131187530910662655\n",
"904625697166532776746648320380374280103671755200316906558262375061821325311\n",
"1809251394333065553493296640760748560207343510400633813116524750123642650623\n",
"3618502788666131106986593281521497120414687020801267626233049500247285301247\n",
"7237005577332262213973186563042994240829374041602535252466099000494570602495\n",
"14474011154664524427946373126085988481658748083205070504932198000989141204991\n",
"28948022309329048855892746252171976963317496166410141009864396001978282409983\n",
"57896044618658097711785492504343953926634992332820282019728792003956564819967\n",
"115792089237316195423570985008687907853269984665640564039457584007913129639935\n",
"231584178474632390847141970017375815706539969331281128078915168015826259279871\n",
"463168356949264781694283940034751631413079938662562256157830336031652518559743\n",
"926336713898529563388567880069503262826159877325124512315660672063305037119487\n",
"1852673427797059126777135760139006525652319754650249024631321344126610074238975\n",
"3705346855594118253554271520278013051304639509300498049262642688253220148477951\n",
"7410693711188236507108543040556026102609279018600996098525285376506440296955903\n",
"14821387422376473014217086081112052205218558037201992197050570753012880593911807\n",
"29642774844752946028434172162224104410437116074403984394101141506025761187823615\n",
"59285549689505892056868344324448208820874232148807968788202283012051522375647231\n",
"118571099379011784113736688648896417641748464297615937576404566024103044751294463\n",
"237142198758023568227473377297792835283496928595231875152809132048206089502588927\n",
"474284397516047136454946754595585670566993857190463750305618264096412179005177855\n",
"948568795032094272909893509191171341133987714380927500611236528192824358010355711\n",
"1897137590064188545819787018382342682267975428761855001222473056385648716020711423\n",
"3794275180128377091639574036764685364535950857523710002444946112771297432041422847\n",
"7588550360256754183279148073529370729071901715047420004889892225542594864082845695\n",
"15177100720513508366558296147058741458143803430094840009779784451085189728165691391\n",
"30354201441027016733116592294117482916287606860189680019559568902170379456331382783\n",
"60708402882054033466233184588234965832575213720379360039119137804340758912662765567\n",
"121416805764108066932466369176469931665150427440758720078238275608681517825325531135\n",
"242833611528216133864932738352939863330300854881517440156476551217363035650651062271\n",
"485667223056432267729865476705879726660601709763034880312953102434726071301302124543\n",
"971334446112864535459730953411759453321203419526069760625906204869452142602604249087\n",
"1942668892225729070919461906823518906642406839052139521251812409738904285205208498175\n",
"3885337784451458141838923813647037813284813678104279042503624819477808570410416996351\n",
"7770675568902916283677847627294075626569627356208558085007249638955617140820833992703\n",
"15541351137805832567355695254588151253139254712417116170014499277911234281641667985407\n",
"31082702275611665134711390509176302506278509424834232340028998555822468563283335970815\n",
"62165404551223330269422781018352605012557018849668464680057997111644937126566671941631\n",
"124330809102446660538845562036705210025114037699336929360115994223289874253133343883263\n",
"248661618204893321077691124073410420050228075398673858720231988446579748506266687766527\n",
"497323236409786642155382248146820840100456150797347717440463976893159497012533375533055\n",
"994646472819573284310764496293641680200912301594695434880927953786318994025066751066111\n",
"1989292945639146568621528992587283360401824603189390869761855907572637988050133502132223\n",
"3978585891278293137243057985174566720803649206378781739523711815145275976100267004264447\n",
"7957171782556586274486115970349133441607298412757563479047423630290551952200534008528895\n",
"15914343565113172548972231940698266883214596825515126958094847260581103904401068017057791\n",
"31828687130226345097944463881396533766429193651030253916189694521162207808802136034115583\n",
"63657374260452690195888927762793067532858387302060507832379389042324415617604272068231167\n",
"127314748520905380391777855525586135065716774604121015664758778084648831235208544136462335\n",
"254629497041810760783555711051172270131433549208242031329517556169297662470417088272924671\n",
"509258994083621521567111422102344540262867098416484062659035112338595324940834176545849343\n",
"1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698687\n",
"2037035976334486086268445688409378161051468393665936250636140449354381299763336706183397375\n",
"4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794751\n",
"8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589503\n",
"16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179007\n",
"32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358015\n",
"65185151242703554760590262029100101153646988597309960020356494379340201592426774597868716031\n",
"130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432063\n",
"260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864127\n",
"521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728255\n",
"1042962419883256876169444192465601618458351817556959360325703910069443225478828393565899456511\n",
"2085924839766513752338888384931203236916703635113918720651407820138886450957656787131798913023\n",
"4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826047\n",
"8343699359066055009355553539724812947666814540455674882605631280555545803830627148527195652095\n",
"16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304191\n",
"33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608383\n",
"66749594872528440074844428317798503581334516323645399060845050244444366430645017188217565216767\n",
"133499189745056880149688856635597007162669032647290798121690100488888732861290034376435130433535\n",
"266998379490113760299377713271194014325338065294581596243380200977777465722580068752870260867071\n",
"533996758980227520598755426542388028650676130589163192486760401955554931445160137505740521734143\n",
"1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468287\n",
"2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936575\n",
"4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873151\n",
"8543948143683640329580086824678208458410818089426611079788166431288878903122562200091848347746303\n",
"17087896287367280659160173649356416916821636178853222159576332862577757806245124400183696695492607\n",
"34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985215\n",
"68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970431\n",
"136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940863\n",
"273406340597876490546562778389702670669146178861651554553221325801244124899921990402939147127881727\n",
"546812681195752981093125556779405341338292357723303109106442651602488249799843980805878294255763455\n",
"1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526911\n",
"2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053823\n",
"4374501449566023848745004454235242730706338861786424872851541212819905998398751846447026354046107647\n",
"8749002899132047697490008908470485461412677723572849745703082425639811996797503692894052708092215295\n",
"17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430591\n",
"34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861183\n",
"69992023193056381579920071267763883691301421788582797965624659405118495974380029543152421664737722367\n",
"139984046386112763159840142535527767382602843577165595931249318810236991948760059086304843329475444735\n",
"279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889471\n",
"559936185544451052639360570142111069530411374308662383724997275240947967795040236345219373317901778943\n",
"1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557887\n",
"2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115775\n",
"4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231551\n",
"8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463103\n",
"17917957937422433684459538244547554224973163977877196279199912807710334969441287563047019946172856926207\n",
"35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852415\n",
"71671831749689734737838152978190216899892655911508785116799651230841339877765150252188079784691427704831\n",
"143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409663\n",
"286687326998758938951352611912760867599570623646035140467198604923365359511060601008752319138765710819327\n",
"573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638655\n",
"1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277311\n",
"2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554623\n",
"4586997231980143023221641790604173881593129978336562247475177678773845752176969616140037106220251373109247\n",
"9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218495\n",
"18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436991\n",
"36695977855841144185773134324833391052745039826692497979801421430190766017415756929120296849762010984873983\n",
"73391955711682288371546268649666782105490079653384995959602842860381532034831513858240593699524021969747967\n",
"146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495935\n",
"293567822846729153486185074598667128421960318613539983838411371441526128139326055432962374798096087878991871\n",
"587135645693458306972370149197334256843920637227079967676822742883052256278652110865924749596192175757983743\n",
"1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967487\n",
"2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934975\n",
"4697085165547666455778961193578674054751365097816639741414581943064418050229216886927397996769537406063869951\n",
"9394170331095332911557922387157348109502730195633279482829163886128836100458433773854795993539074812127739903\n",
"18788340662190665823115844774314696219005460391266558965658327772257672200916867547709591987078149624255479807\n",
"37576681324381331646231689548629392438010920782533117931316655544515344401833735095419183974156299248510959615\n",
"75153362648762663292463379097258784876021841565066235862633311089030688803667470190838367948312598497021919231\n",
"150306725297525326584926758194517569752043683130132471725266622178061377607334940381676735896625196994043838463\n",
"300613450595050653169853516389035139504087366260264943450533244356122755214669880763353471793250393988087676927\n",
"601226901190101306339707032778070279008174732520529886901066488712245510429339761526706943586500787976175353855\n",
"1202453802380202612679414065556140558016349465041059773802132977424491020858679523053413887173001575952350707711\n",
"2404907604760405225358828131112281116032698930082119547604265954848982041717359046106827774346003151904701415423\n",
"4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830847\n",
"9619630419041620901435312524449124464130795720328478190417063819395928166869436184427311097384012607618805661695\n",
"19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323391\n",
"38478521676166483605741250097796497856523182881313912761668255277583712667477744737709244389536050430475222646783\n",
"76957043352332967211482500195592995713046365762627825523336510555167425334955489475418488779072100860950445293567\n",
"153914086704665934422965000391185991426092731525255651046673021110334850669910978950836977558144201721900890587135\n",
"307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174271\n",
"615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348543\n",
"1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697087\n",
"2462625387274654950767440006258975862817483704404090416746768337765357610718575663213391640930307227550414249394175\n",
"4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788351\n",
"9850501549098619803069760025035903451269934817616361666987073351061430442874302652853566563721228910201656997576703\n",
"19701003098197239606139520050071806902539869635232723333974146702122860885748605305707133127442457820403313995153407\n",
"39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306815\n",
"78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613631\n",
"157608024785577916849116160400574455220318957081861786671793173616982887085988842445657065019539662563226511961227263\n",
"315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454527\n",
"630432099142311667396464641602297820881275828327447146687172694467931548343955369782628260078158650252906047844909055\n",
"1260864198284623334792929283204595641762551656654894293374345388935863096687910739565256520156317300505812095689818111\n",
"2521728396569246669585858566409191283525103313309788586748690777871726193375821479130513040312634601011624191379636223\n",
"5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272447\n",
"10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544895\n",
"20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089791\n",
"40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179583\n",
"80695308690215893426747474125094121072803306025913234775958104891895238188026287332176417290004307232371974124148359167\n",
"161390617380431786853494948250188242145606612051826469551916209783790476376052574664352834580008614464743948248296718335\n",
"322781234760863573706989896500376484291213224103652939103832419567580952752105149328705669160017228929487896496593436671\n",
"645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873343\n",
"1291124939043454294827959586001505937164852896414611756415329678270323811008420597314822676640068915717951585986373746687\n",
"2582249878086908589655919172003011874329705792829223512830659356540647622016841194629645353280137831435903171972747493375\n",
"5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986751\n",
"10328999512347634358623676688012047497318823171316894051322637426162590488067364778518581413120551325743612687890989973503\n",
"20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947007\n",
"41315998049390537434494706752048189989275292685267576205290549704650361952269459114074325652482205302974450751563959894015\n",
"82631996098781074868989413504096379978550585370535152410581099409300723904538918228148651304964410605948901503127919788031\n",
"165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576063\n",
"330527984395124299475957654016385519914202341482140609642324397637202895618155672912594605219857642423795606012511679152127\n",
"661055968790248598951915308032771039828404682964281219284648795274405791236311345825189210439715284847591212025023358304255\n",
"1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608511\n",
"2644223875160994395807661232131084159313618731857124877138595181097623164945245383300756841758861139390364848100093433217023\n",
"5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434047\n",
"10576895500643977583230644928524336637254474927428499508554380724390492659780981533203027367035444557561459392400373732868095\n",
"21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736191\n",
"42307582002575910332922579714097346549017899709713998034217522897561970639123926132812109468141778230245837569601494931472383\n",
"84615164005151820665845159428194693098035799419427996068435045795123941278247852265624218936283556460491675139202989862944767\n",
"169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889535\n",
"338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779071\n",
"676921312041214565326761275425557544784286395355423968547480366360991530225982818124993751490268451683933401113623918903558143\n",
"1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116287\n",
"2707685248164858261307045101702230179137145581421695874189921465443966120903931272499975005961073806735733604454495675614232575\n",
"5415370496329716522614090203404460358274291162843391748379842930887932241807862544999950011922147613471467208908991351228465151\n",
"10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930303\n",
"21661481985318866090456360813617841433097164651373566993519371723551728967231450179999800047688590453885868835635965404913860607\n",
"43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721215\n",
"86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442431\n",
"173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884863\n",
"346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769727\n",
"693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539455\n",
"1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078911\n",
"2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157823\n",
"5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315647\n",
"11090678776483259438313656736572334813745748301503266300681918322458485231222502492159897624416558312389564843845614287315896631295\n",
"22181357552966518876627313473144669627491496603006532601363836644916970462445004984319795248833116624779129687691228574631793262591\n",
"44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525183\n",
"88725430211866075506509253892578678509965986412026130405455346579667881849780019937279180995332466499116518750764914298527173050367\n",
"177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100735\n",
"354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201471\n",
"709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402943\n",
"1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805887\n",
"2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611775\n",
"5678427533559428832416592249125035424637823130369672345949142181098744438385921275985867583701277855943457200048954515105739075223551\n",
"11356855067118857664833184498250070849275646260739344691898284362197488876771842551971735167402555711886914400097909030211478150447103\n",
"22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894207\n",
"45427420268475430659332737993000283397102585042957378767593137448789955507087370207886940669610222847547657600391636120845912601788415\n",
"90854840536950861318665475986000566794205170085914757535186274897579911014174740415773881339220445695095315200783272241691825203576831\n",
"181709681073901722637330951972001133588410340171829515070372549795159822028349480831547762678440891390190630401566544483383650407153663\n",
"363419362147803445274661903944002267176820680343659030140745099590319644056698961663095525356881782780381260803133088966767300814307327\n",
"726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614655\n",
"1453677448591213781098647615776009068707282721374636120562980398361278576226795846652382101427527131121525043212532355867069203257229311\n",
"2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458623\n",
"5814709794364855124394590463104036274829130885498544482251921593445114304907183386609528405710108524486100172850129423468276813028917247\n",
"11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834495\n",
"23258839177459420497578361852416145099316523541994177929007686373780457219628733546438113622840434097944400691400517693873107252115668991\n",
"46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337983\n",
"93035356709837681990313447409664580397266094167976711716030745495121828878514934185752454491361736391777602765602070775492429008462675967\n",
"186070713419675363980626894819329160794532188335953423432061490990243657757029868371504908982723472783555205531204141550984858016925351935\n",
"372141426839350727961253789638658321589064376671906846864122981980487315514059736743009817965446945567110411062408283101969716033850703871\n",
"744282853678701455922507579277316643178128753343813693728245963960974631028119473486019635930893891134220822124816566203939432067701407743\n",
"1488565707357402911845015158554633286356257506687627387456491927921949262056238946972039271861787782268441644249633132407878864135402815487\n",
"2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630975\n",
"5954262829429611647380060634218533145425030026750509549825967711687797048224955787888157087447151129073766576998532529631515456541611261951\n",
"11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523903\n",
"23817051317718446589520242536874132581700120107002038199303870846751188192899823151552628349788604516295066307994130118526061826166445047807\n",
"47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095615\n",
"95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191231\n",
"190536410541747572716161940294993060653600960856016305594430966774009505543198585212421026798308836130360530463953040948208494609331560382463\n",
"381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764927\n",
"762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529855\n",
"1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059711\n",
"3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119423\n",
"6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238847\n",
"12194330274671844653834364178879555881830461494785043558043581873536608354764709453594945715091765512343073949692994620685343654997219864477695\n",
"24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955391\n",
"48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910783\n",
"97554642197374757230674913431036447054643691958280348464348654988292866838117675628759565720734124098744591597543956965482749239977758915821567\n",
"195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643135\n",
"390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286271\n",
"780437137578998057845399307448291576437149535666242787714789239906342934704941405030076525765872992789956732780351655723861993919822071326572543\n",
"1560874275157996115690798614896583152874299071332485575429578479812685869409882810060153051531745985579913465560703311447723987839644142653145087\n",
"3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290175\n",
"6243497100631984462763194459586332611497196285329942301718313919250743477639531240240612206126983942319653862242813245790895951358576570612580351\n",
"12486994201263968925526388919172665222994392570659884603436627838501486955279062480481224412253967884639307724485626491581791902717153141225160703\n",
"24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321407\n",
"49947976805055875702105555676690660891977570282639538413746511354005947821116249921924897649015871538557230897942505966327167610868612564900642815\n",
"99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285631\n",
"199791907220223502808422222706762643567910281130558153654986045416023791284464999687699590596063486154228923591770023865308670443474450259602571263\n",
"399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142527\n",
"799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285055\n",
"1598335257761788022467377781654101148543282249044465229239888363328190330275719997501596724768507889233831388734160190922469363547795602076820570111\n",
"3196670515523576044934755563308202297086564498088930458479776726656380660551439995003193449537015778467662777468320381844938727095591204153641140223\n",
"6393341031047152089869511126616404594173128996177860916959553453312761321102879990006386899074031556935325554936640763689877454191182408307282280447\n",
"12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560895\n",
"25573364124188608359478044506465618376692515984711443667838213813251045284411519960025547596296126227741302219746563054759509816764729633229129121791\n",
"51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243583\n",
"102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487167\n",
"204586912993508866875824356051724947013540127877691549342705710506008362275292159680204380770369009821930417757972504438076078534117837065833032974335\n",
"409173825987017733751648712103449894027080255755383098685411421012016724550584319360408761540738019643860835515945008876152157068235674131666065948671\n",
"818347651974035467503297424206899788054160511510766197370822842024033449101168638720817523081476039287721671031890017752304314136471348263332131897343\n",
"1636695303948070935006594848413799576108321023021532394741645684048066898202337277441635046162952078575443342063780035504608628272942696526664263794687\n"
]
}
],
"source": [
"for i in range(500):\n",
" print(2**i - 1)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
================================================
FILE: docs/source/examples/Notebook/Typesetting Equations.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The Markdown parser included in the Jupyter Notebook is MathJax-aware. This means that you can freely mix in mathematical expressions using the [MathJax subset of Tex and LaTeX](https://docs.mathjax.org/en/latest/input/tex/). [Some examples from the MathJax demos site](https://mathjax.github.io/MathJax-demos-web/) are reproduced below, as well as the Markdown+TeX source."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Motivating Examples\n",
"\n",
"## The Lorenz Equations\n",
"### Source\n",
"```\n",
"\\begin{align}\n",
"\\dot{x} & = \\sigma(y-x) \\\\\n",
"\\dot{y} & = \\rho x - y - xz \\\\\n",
"\\dot{z} & = -\\beta z + xy\n",
"\\end{align}\n",
"```\n",
"### Display\n",
"\n",
"$\\begin{align}\n",
"\\dot{x} & = \\sigma(y-x) \\\\\n",
"\\dot{y} & = \\rho x - y - xz \\\\\n",
"\\dot{z} & = -\\beta z + xy\n",
"\\end{align}$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The Cauchy-Schwarz Inequality\n",
"### Source\n",
"```\n",
"\\begin{equation*}\n",
"\\left( \\sum_{k=1}^n a_k b_k \\right)^2 \\leq \\left( \\sum_{k=1}^n a_k^2 \\right) \\left( \\sum_{k=1}^n b_k^2 \\right)\n",
"\\end{equation*}\n",
"```\n",
"### Display\n",
"\n",
"$\\begin{equation*}\n",
"\\left( \\sum_{k=1}^n a_k b_k \\right)^2 \\leq \\left( \\sum_{k=1}^n a_k^2 \\right) \\left( \\sum_{k=1}^n b_k^2 \\right)\n",
"\\end{equation*}$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## A Cross Product Formula\n",
"### Source\n",
"```\n",
"\\begin{equation*}\n",
"\\mathbf{V}_1 \\times \\mathbf{V}_2 = \\begin{vmatrix}\n",
"\\mathbf{i} & \\mathbf{j} & \\mathbf{k} \\\\\n",
"\\frac{\\partial X}{\\partial u} & \\frac{\\partial Y}{\\partial u} & 0 \\\\\n",
"\\frac{\\partial X}{\\partial v} & \\frac{\\partial Y}{\\partial v} & 0\n",
"\\end{vmatrix} \n",
"\\end{equation*}\n",
"```\n",
"### Display\n",
"\n",
"$\\begin{equation*}\n",
"\\mathbf{V}_1 \\times \\mathbf{V}_2 = \\begin{vmatrix}\n",
"\\mathbf{i} & \\mathbf{j} & \\mathbf{k} \\\\\n",
"\\frac{\\partial X}{\\partial u} & \\frac{\\partial Y}{\\partial u} & 0 \\\\\n",
"\\frac{\\partial X}{\\partial v} & \\frac{\\partial Y}{\\partial v} & 0\n",
"\\end{vmatrix} \n",
"\\end{equation*}$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The probability of getting \\(k\\) heads when flipping \\(n\\) coins is\n",
"### Source\n",
"```\n",
"\\begin{equation*}\n",
"P(E) = {n \\choose k} p^k (1-p)^{ n-k} \n",
"\\end{equation*}\n",
"```\n",
"### Display\n",
"\n",
"$\\begin{equation*}\n",
"P(E) = {n \\choose k} p^k (1-p)^{ n-k} \n",
"\\end{equation*}$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## An Identity of Ramanujan\n",
"### Source\n",
"```\n",
"\\begin{equation*}\n",
"\\frac{1}{\\Bigl(\\sqrt{\\phi \\sqrt{5}}-\\phi\\Bigr) e^{\\frac25 \\pi}} =\n",
"1+\\frac{e^{-2\\pi}} {1+\\frac{e^{-4\\pi}} {1+\\frac{e^{-6\\pi}}\n",
"{1+\\frac{e^{-8\\pi}} {1+\\ldots} } } } \n",
"\\end{equation*}\n",
"```\n",
"### Display\n",
"$\\begin{equation*}\n",
"\\frac{1}{\\Bigl(\\sqrt{\\phi \\sqrt{5}}-\\phi\\Bigr) e^{\\frac25 \\pi}} =\n",
"1+\\frac{e^{-2\\pi}} {1+\\frac{e^{-4\\pi}} {1+\\frac{e^{-6\\pi}}\n",
"{1+\\frac{e^{-8\\pi}} {1+\\ldots} } } } \n",
"\\end{equation*}$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## A Rogers-Ramanujan Identity\n",
"### Source\n",
"```\n",
"\\begin{equation*}\n",
"1 + \\frac{q^2}{(1-q)}+\\frac{q^6}{(1-q)(1-q^2)}+\\cdots =\n",
"\\prod_{j=0}^{\\infty}\\frac{1}{(1-q^{5j+2})(1-q^{5j+3})},\n",
"\\quad\\quad \\text{for $|q|<1$}. \n",
"\\end{equation*}\n",
"```\n",
"### Display\n",
"\n",
"$$\\begin{equation*}\n",
"1 + \\frac{q^2}{(1-q)}+\\frac{q^6}{(1-q)(1-q^2)}+\\cdots =\n",
"\\prod_{j=0}^{\\infty}\\frac{1}{(1-q^{5j+2})(1-q^{5j+3})},\n",
"\\quad\\quad \\text{for $|q|<1$}. \n",
"\\end{equation*}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Maxwell's Equations\n",
"### Source\n",
"```\n",
"\\begin{align}\n",
"\\nabla \\times \\vec{\\mathbf{B}} -\\, \\frac1c\\, \\frac{\\partial\\vec{\\mathbf{E}}}{\\partial t} & = \\frac{4\\pi}{c}\\vec{\\mathbf{j}} \\\\ \\nabla \\cdot \\vec{\\mathbf{E}} & = 4 \\pi \\rho \\\\\n",
"\\nabla \\times \\vec{\\mathbf{E}}\\, +\\, \\frac1c\\, \\frac{\\partial\\vec{\\mathbf{B}}}{\\partial t} & = \\vec{\\mathbf{0}} \\\\\n",
"\\nabla \\cdot \\vec{\\mathbf{B}} & = 0 \n",
"\\end{align}\n",
"```\n",
"### Display\n",
"\n",
"$\\begin{align}\n",
"\\nabla \\times \\vec{\\mathbf{B}} -\\, \\frac1c\\, \\frac{\\partial\\vec{\\mathbf{E}}}{\\partial t} & = \\frac{4\\pi}{c}\\vec{\\mathbf{j}} \\\\ \\nabla \\cdot \\vec{\\mathbf{E}} & = 4 \\pi \\rho \\\\\n",
"\\nabla \\times \\vec{\\mathbf{E}}\\, +\\, \\frac1c\\, \\frac{\\partial\\vec{\\mathbf{B}}}{\\partial t} & = \\vec{\\mathbf{0}} \\\\\n",
"\\nabla \\cdot \\vec{\\mathbf{B}} & = 0 \n",
"\\end{align}$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Equation Numbering and References\n",
"\n",
"Equation numbering and referencing will be available in a future version of the Jupyter notebook."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Inline Typesetting (Mixing Markdown and TeX)\n",
"\n",
"While display equations look good for a page of samples, the ability to mix math and *formatted* **text** in a paragraph is also important.\n",
"\n",
"### Source\n",
"```\n",
"This expression $\\sqrt{3x-1}+(1+x)^2$ is an example of a TeX inline equation in a [Markdown-formatted](https://daringfireball.net/projects/markdown/) sentence. \n",
"```\n",
"\n",
"### Display\n",
"This expression $\\sqrt{3x-1}+(1+x)^2$ is an example of a TeX inline equation in a [Markdown-formatted](https://daringfireball.net/projects/markdown/) sentence. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Other Syntax\n",
"\n",
"You will notice in other places on the web that `$$` are needed explicitly to begin and end MathJax typesetting. This is **not** required if you will be using TeX environments, but the Jupyter notebook will accept this syntax on legacy notebooks. \n",
"\n",
"## Source\n",
"\n",
"```\n",
"$$\n",
"\\begin{array}{c}\n",
"y_1 \\\\\\\n",
"y_2 \\mathtt{t}_i \\\\\\\n",
"z_{3,4}\n",
"\\end{array}\n",
"$$\n",
"```\n",
"\n",
"```\n",
"$$\n",
"\\begin{array}{c}\n",
"y_1 \\cr\n",
"y_2 \\mathtt{t}_i \\cr\n",
"y_{3}\n",
"\\end{array}\n",
"$$\n",
"```\n",
"\n",
"```\n",
"$$\\begin{eqnarray} \n",
"x' &=& &x \\sin\\phi &+& z \\cos\\phi \\\\\n",
"z' &=& - &x \\cos\\phi &+& z \\sin\\phi \\\\\n",
"\\end{eqnarray}$$\n",
"```\n",
"\n",
"```\n",
"$$\n",
"x=4\n",
"$$\n",
"```\n",
"\n",
"## Display\n",
"\n",
"$$\n",
"\\begin{array}{c}\n",
"y_1 \\\\\\\n",
"y_2 \\mathtt{t}_i \\\\\\\n",
"z_{3,4}\n",
"\\end{array}\n",
"$$\n",
"\n",
"$$\n",
"\\begin{array}{c}\n",
"y_1 \\cr\n",
"y_2 \\mathtt{t}_i \\cr\n",
"y_{3}\n",
"\\end{array}\n",
"$$\n",
"\n",
"$$\\begin{eqnarray} \n",
"x' &=& &x \\sin\\phi &+& z \\cos\\phi \\\\\n",
"z' &=& - &x \\cos\\phi &+& z \\sin\\phi \\\\\n",
"\\end{eqnarray}$$\n",
"\n",
"$$\n",
"x=4\n",
"$$"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
================================================
FILE: docs/source/examples/Notebook/What is the Jupyter Notebook.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# What is the Jupyter Notebook?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Introduction"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The Jupyter Notebook is an **interactive computing environment** that enables users to author notebook documents that include: \n",
"- Live code\n",
"- Interactive widgets\n",
"- Plots\n",
"- Narrative text\n",
"- Equations\n",
"- Images\n",
"- Video\n",
"\n",
"These documents provide a **complete and self-contained record of a computation** that can be converted to various formats and shared with others using email, [Dropbox](https://www.dropbox.com/), version control systems (like git/[GitHub](https://github.com)) or [nbviewer.jupyter.org](https://nbviewer.jupyter.org)."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Components"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The Jupyter Notebook combines three components:\n",
"\n",
"* **The notebook web application**: An interactive web application for writing and running code interactively and authoring notebook documents.\n",
"* **Kernels**: Separate processes started by the notebook web application that runs users' code in a given language and returns output back to the notebook web application. The kernel also handles things like computations for interactive widgets, tab completion and introspection. \n",
"* **Notebook documents**: Self-contained documents that contain a representation of all content visible in the notebook web application, including inputs and outputs of the computations, narrative\n",
"text, equations, images, and rich media representations of objects. Each notebook document has its own kernel."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Notebook web application"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The notebook web application enables users to:\n",
"\n",
"* **Edit code in the browser**, with automatic syntax highlighting, indentation, and tab completion/introspection.\n",
"* **Run code from the browser**, with the results of computations attached to the code which generated them.\n",
"* See the results of computations with **rich media representations**, such as HTML, LaTeX, PNG, SVG, PDF, etc.\n",
"* Create and use **interactive JavaScript widgets**, which bind interactive user interface controls and visualizations to reactive kernel side computations.\n",
"* Author **narrative text** using the [Markdown](https://daringfireball.net/projects/markdown/) markup language.\n",
"* Include mathematical equations using **LaTeX syntax in Markdown**, which are rendered in-browser by [MathJax](https://www.mathjax.org/)."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Kernels"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Through Jupyter's kernel and messaging architecture, the Notebook allows code to be run in a range of different programming languages. For each notebook document that a user opens, the web application starts a kernel that runs the code for that notebook. Each kernel is capable of running code in a single programming language and there are kernels available in the following languages:\n",
"\n",
"* Python(https://github.com/ipython/ipython)\n",
"* Julia (https://github.com/JuliaLang/IJulia.jl)\n",
"* R (https://github.com/IRkernel/IRkernel)\n",
"* Ruby (https://github.com/minrk/iruby)\n",
"* Haskell (https://github.com/gibiansky/IHaskell)\n",
"* Scala (https://github.com/Bridgewater/scala-notebook)\n",
"* node.js (https://gist.github.com/Carreau/4279371)\n",
"* Go (https://github.com/takluyver/igo)\n",
"\n",
"The default kernel runs Python code. The notebook provides a simple way for users to pick which of these kernels is used for a given notebook. \n",
"\n",
"Each of these kernels communicate with the notebook web application and web browser using a JSON over ZeroMQ/WebSockets message protocol that is described [here](https://jupyter-client.readthedocs.io/en/latest/messaging.html#messaging). Most users don't need to know about these details, but it helps to understand that \"kernels run code.\""
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Notebook documents"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notebook documents contain the **inputs and outputs** of an interactive session as well as **narrative text** that accompanies the code but is not meant for execution. **Rich output** generated by running code, including HTML, images, video, and plots, is embeddeed in the notebook, which makes it a complete and self-contained record of a computation. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"When you run the notebook web application on your computer, notebook documents are just **files on your local filesystem with a** `.ipynb` **extension**. This allows you to use familiar workflows for organizing your notebooks into folders and sharing them with others."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notebooks consist of a **linear sequence of cells**. There are three basic cell types:\n",
"\n",
"* **Code cells:** Input and output of live code that is run in the kernel\n",
"* **Markdown cells:** Narrative text with embedded LaTeX equations\n",
"* **Raw cells:** Unformatted text that is included, without modification, when notebooks are converted to different formats using nbconvert\n",
"\n",
"Internally, notebook documents are [JSON](https://en.wikipedia.org/wiki/JSON) **data** with **binary values** [base64](https://en.wikipedia.org/wiki/Base64) encoded. This allows them to be **read and manipulated programmatically** by any programming language. Because JSON is a text format, notebook documents are version control friendly.\n",
"\n",
"**Notebooks can be exported** to different static formats including HTML, reStructeredText, LaTeX, PDF, and slide shows ([reveal.js](https://revealjs.com)) using Jupyter's `nbconvert` utility.\n",
"\n",
"Furthermore, any notebook document available from a **public URL or on GitHub can be shared** via [nbviewer](https://nbviewer.jupyter.org). This service loads the notebook document from the URL and renders it as a static web page. The resulting web page may thus be shared with others **without their needing to install the Jupyter Notebook**."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.2"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
================================================
FILE: docs/source/examples/Notebook/Working With Markdown Cells.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Markdown Cells"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Text can be added to Jupyter Notebooks using Markdown cells. You can change the cell type to Markdown by using the `Cell` menu, the toolbar, or the key shortcut `m`. Markdown is a popular markup language that is a superset of HTML. Its specification can be found here:\n",
"\n",
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Markdown basics"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can make text *italic* or **bold** by surrounding a block of text with a single or double * respectively"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can build nested itemized or enumerated lists:\n",
"\n",
"* One\n",
" - Sublist\n",
" - This\n",
" - Sublist\n",
" - That\n",
" - The other thing\n",
"* Two\n",
" - Sublist\n",
"* Three\n",
" - Sublist\n",
"\n",
"Now another list:\n",
"\n",
"1. Here we go\n",
" 1. Sublist\n",
" 2. Sublist\n",
"2. There we go\n",
"3. Now this"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can add horizontal rules:\n",
"\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here is a blockquote:\n",
"\n",
"> Beautiful is better than ugly.\n",
"> Explicit is better than implicit.\n",
"> Simple is better than complex.\n",
"> Complex is better than complicated.\n",
"> Flat is better than nested.\n",
"> Sparse is better than dense.\n",
"> Readability counts.\n",
"> Special cases aren't special enough to break the rules.\n",
"> Although practicality beats purity.\n",
"> Errors should never pass silently.\n",
"> Unless explicitly silenced.\n",
"> In the face of ambiguity, refuse the temptation to guess.\n",
"> There should be one-- and preferably only one --obvious way to do it.\n",
"> Although that way may not be obvious at first unless you're Dutch.\n",
"> Now is better than never.\n",
"> Although never is often better than *right* now.\n",
"> If the implementation is hard to explain, it's a bad idea.\n",
"> If the implementation is easy to explain, it may be a good idea.\n",
"> Namespaces are one honking great idea -- let's do more of those!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"And shorthand for links:\n",
"\n",
"[Jupyter's website](https://jupyter.org)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can use backslash \\ to generate literal characters which would otherwise have special meaning in the Markdown syntax.\n",
"\n",
"```\n",
"\\*literal asterisks\\*\n",
" *literal asterisks*\n",
"```\n",
"\n",
"Use double backslash \\ \\ to generate the literal $ symbol."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Headings"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can add headings by starting a line with one (or multiple) `#` followed by a space, as in the following example:\n",
"\n",
"```\n",
"# Heading 1\n",
"# Heading 2\n",
"## Heading 2.1\n",
"## Heading 2.2\n",
"```"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Embedded code"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can embed code meant for illustration instead of execution in Python:\n",
"\n",
" def f(x):\n",
" \"\"\"a docstring\"\"\"\n",
" return x**2\n",
"\n",
"or other languages:\n",
"\n",
" for (i=0; i\n",
"