jupyter / notebook

Jupyter Interactive Notebook
https://jupyter-notebook.readthedocs.io/
BSD 3-Clause "New" or "Revised" License
11.75k stars 4.99k forks source link

Superfluous empty space at the bottom of notebook #7455

Open soerenwolfers opened 2 months ago

soerenwolfers commented 2 months ago

Description

Way too much empty space at the bottom of notebooks in Jupyter Notebook 7.

Reproduce

1: Create new notebook 2: Create empty cells to fill the screen 2: Scroll down (by letting your mouse wheel run free, if you have such a mouse wheel). 3: Your entire screen is now filled with empty space and you have to scroll back up by hand to get to what you wanted: the last cell.

image

Expected behavior

Same as any other text editor: scroll to the bottom of the existing content.

image

Context

Troubleshoot Output
$PATH:
        /usr/local/cuda/bin
        /usr/local/sbin
        /usr/local/bin
        /usr/sbin
        /usr/bin
        /sbin
        /bin
        /usr/local/go/bin

sys.path:
        /usr/lib/python310.zip
        /usr/lib/python3.10
        /usr/lib/python3.10/lib-dynload

sys.executable:

sys.version:
        3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0]

platform.platform():
        Linux-5.15.0-91-generic-x86_64-with-glibc2.35

which -a jupyter:
        /usr/local/bin/jupyter

pip list:
        Package                             Version         Editable project location
        ----------------------------------- --------------- -------------------------
        adbc-driver-manager                 1.1.0
        adbc-driver-postgresql              1.1.0
        aiofiles                            23.2.1
        aiohttp                             3.9.3
        aiosignal                           1.3.1
        annotated-types                     0.7.0
        ansi2html                           1.9.1
        anyio                               4.3.0
        argon2-cffi                         23.1.0
        argon2-cffi-bindings                21.2.0
        armada_client                       0.3.4
        arrow                               1.3.0
        asttokens                           2.4.1
        async-lru                           2.0.4
        async-timeout                       4.0.3
        attrs                               23.2.0
        Babel                               2.14.0
        beautifulsoup4                      4.12.3
        benchmark                           0.1
        bleach                              6.1.0
        Brotli                              1.1.0
        bson                                0.5.10
        cached-property                     1.5.2
        cachetools                          5.4.0
        certifi                             2024.2.2
        cffi                                1.16.0
        chardet                             5.2.0
        charset-normalizer                  3.3.2
        click                               8.1.7
        clipboard                           0.0.4
        cloudpickle                         3.0.0
        comm                                0.2.1
        confluent-kafka                     2.5.0
        contourpy                           1.2.0
        cryptography                        42.0.5
        cycler                              0.12.1
        dash                                2.10.2
        dash-core-components                2.0.0
        dash-html-components                2.0.0
        dash-table                          5.0.0
        dataframe-dustins                   0.0.1
        debugpy                             1.8.1
        decorator                           5.1.1
        defusedxml                          0.7.1
        dill                                0.3.8
        docker                              7.1.0
        docopt                              0.6.2
        duckdb                              1.0.1.dev5328
        EasyProcess                         1.1
        entrypoint2                         1.1
        et-xmlfile                          1.1.0
        exceptiongroup                      1.2.0
        execnet                             2.1.1
        executing                           2.0.1
        fastjsonschema                      2.19.1
        filelock                            3.15.4
        Flask                               2.1.2
        fonttools                           4.49.0
        fqdn                                1.5.1
        frozenlist                          1.4.1
        ghdiff                              0.4
        google-auth                         2.33.0
        graphviz                            0.20.1
        greenlet                            3.0.3
        grpcio                              1.58.0
        grpcio-tools                        1.58.0
        gssapi                              1.8.3
        h11                                 0.14.0
        hdfs                                2.7.3
        httpcore                            1.0.4
        httpx                               0.27.0
        human-id                            0.2.0
        hvac                                2.3.0
        idna                                3.6
        importlib_resources                 6.4.0
        inflate64                           1.0.0
        iniconfig                           2.0.0
        ipyaggrid                           0.5.2
        ipykernel                           6.29.3
        ipython                             8.22.1
        ipywidgets                          8.1.2
        isoduration                         20.11.0
        itsdangerous                        2.1.2
        jedi                                0.19.1
        Jinja2                              3.1.3
        joblib                              1.3.2
        json5                               0.9.17
        jsonpointer                         2.4
        jsonschema                          4.21.1
        jsonschema-specifications           2023.12.1
        jupyter                             1.0.0
        jupyter_client                      8.6.0
        jupyter-console                     6.6.3
        jupyter_core                        5.7.1
        jupyter-dash                        0.4.2
        jupyter-events                      0.9.0
        jupyter-lsp                         2.2.3
        jupyter_server                      2.12.5
        jupyter_server_terminals            0.5.2
        jupyterlab                          4.1.2
        jupyterlab_iframe                   0.5.0
        jupyterlab_pygments                 0.3.0
        jupyterlab_server                   2.25.3
        jupyterlab_widgets                  3.0.10
        kaleido                             0.2.1
        kiwisolver                          1.4.5
        krb5                                0.5.1
        kubernetes                          30.1.0
        llvmlite                            0.42.0
        Markdown                            3.6
        markdown-it-py                      3.0.0
        MarkupSafe                          2.1.5
        matplotlib                          3.8.3
        matplotlib-inline                   0.1.6
        mdurl                               0.1.2
        mistune                             3.0.2
        mondrian                            0.1
        multidict                           6.0.5
        multimethod                         1.10
        multivolumefile                     0.2.3
        mypy-extensions                     1.0.0
        mypy-protobuf                       3.3.0
        nbclient                            0.9.0
        nbconvert                           7.16.1
        nbformat                            5.9.2
        nest-asyncio                        1.6.0
        nodeenv                             1.9.1
        notebook                            7.1.1
        notebook_shim                       0.2.4
        numba                               0.59.0
        numexpr                             2.10.0
        numpy                               1.26.4
        oauthlib                            3.2.2
        openpyxl                            3.1.2
        overrides                           7.7.0
        packaging                           23.2
        pandas                              2.2.1
        pandera                             0.19.3
        pandocfilters                       1.5.1
        parso                               0.8.3
        pathlib                             1.0.1
        patsy                               0.5.6
        pem                                 23.1.0
        pexpect                             4.9.0
        pillow                              10.2.0
        pip                                 24.0
        pipdeptree                          2.16.1
        pkce                                1.0.3
        platformdirs                        4.2.0
        plotly                              5.22.0
        pluggy                              1.5.0
        polars                              1.1.0
        prometheus_client                   0.20.0
        prompt-toolkit                      3.0.43
        protobuf                            4.25.4
        protobuf3-to-dict                   0.1.5
        psutil                              5.9.8
        ptyprocess                          0.7.0
        pure-eval                           0.2.2
        py7zr                               0.20.8
        pyarrow                             15.0.0
        pyasn1                              0.6.0
        pyasn1_modules                      0.4.0
        pybcj                               1.0.2
        pycparser                           2.21
        pycryptodomex                       3.20.0
        pydantic                            2.7.1
        pydantic_core                       2.18.2
        Pygments                            2.17.2
        PyJWT                               2.8.0
        pyodbc                              5.1.0
        pyparsing                           3.1.1
        pyperclip                           1.9.0
        pyppmd                              1.1.0
        pyright                             1.1.374
        pyspnego                            0.10.2
        pytest                              8.3.2
        pytest-timeout                      2.3.1
        pytest-xdist                        3.6.1
        python-dateutil                     2.9.0
        python-json-logger                  2.0.7
        pytz                                2024.1
        pyunpack                            0.3
        PyYAML                              6.0.1
        pyzmq                               25.1.2
        pyzstd                              0.15.9
        qtconsole                           5.5.1
        QtPy                                2.4.1
        referencing                         0.33.0
        requests                            2.31.0
        requests-gssapi                     1.3.0
        requests-kerberos                   0.14.0
        requests-oauthlib                   2.0.0
        retrying                            1.3.4
        rfc3339-validator                   0.1.4
        rfc3986-validator                   0.1.1
        rich                                13.7.1
        rpds-py                             0.18.0
        rsa                                 4.9
        ruff                                0.5.5
        scikit-learn                        1.5.1
        scipy                               1.12.0
        semver                              3.0.2
        Send2Trash                          1.8.2
        setuptools                          69.1.0
        simplejson                          3.19.2
        six                                 1.16.0
        sniffio                             1.3.1
        soupsieve                           2.5
        SQLAlchemy                          2.0.32
        stack-data                          0.6.3
        statsmodels                         0.14.1
        tabulate                            0.9.0
        tenacity                            8.2.3
        terminado                           0.18.0
        texttable                           1.7.0
        threadpoolctl                       3.5.0
        tinycss2                            1.2.1
        tomli                               2.0.1
        tornado                             6.4
        tornado-proxy-handlers              0.0.6
        tqdm                                4.66.2
        traitlets                           5.14.1
        type_enforced                       1.5.0
        typeguard                           4.1.5
        types-protobuf                      4.24.0.20240311
        types-python-dateutil               2.8.19.20240106
        typing_extensions                   4.10.0
        typing-inspect                      0.9.0
        tzdata                              2024.1
        uri-template                        1.3.0
        urllib3                             2.2.1
        wcwidth                             0.2.13
        webcolors                           1.13
        webencodings                        0.5.1
        websocket-client                    1.7.0
        Werkzeug                            2.0.3
        wheel                               0.42.0
        widgetsnbextension                  4.0.10
        wrapt                               1.16.0
        yarl                                1.9.4
        zstandard                           0.22.0

RRosio commented 2 months ago

Thank you for opening this issue @soerenwolfers! I was able to reproduce this in Notebook 7.1.1 myself, but not with Notebook 7.2.2. Would you be able to test to see if you experience this issue with the latest Notebook version?

soerenwolfers commented 2 months ago

7.2.2 didn't help for me: Screenshot from 2024-09-10 20-21-52

soerenwolfers commented 2 months ago

@RRosio any more info needed?

RRosio commented 1 month ago

Thank you for the update @soerenwolfers!

I'll go ahead and accept this! I'll just add a note here with more information about the steps I took to try to reproduce in case someone else want to try doing so as well.

Chrome Version: 128

  1. Installed Notebook 7.1.1
  2. Followed steps above in Reproduce section (I was able to reproduce the empty space at the bottom)
  3. Installed Notebook 7.2.2
  4. Empty Cache and Hard Reload
  5. Followed steps above in Reproduce section (I was no longer able to reproduce the empty space at the bottom)